您的位置 首页 java

干货!5年码农带你深入了解Java面向对象,撸完青铜逆袭变王者

今日分享开始啦,请大家多多指教~

一、什么是面向对象?

面向对象编程(Object-Oriented Programming, OOP )面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据。

面向对象的三大特征:

封装

该露的露,该藏的藏。

我们 程序设计 要追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低 耦合 :仅暴露少量的方法给外部使用。

封装(数据的隐藏)

通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。

记住这句话就够了:属性私有,get/set

作用:

  • 提高程序的安全性,保护数据,隐藏代码的实现细节
  • 统一接口
  • 系统可维护增加了

继承

extands :扩展,子类是父类的扩展

//student 学生类 学生也是人 继承person类

public class Student extends Person {

}

给你一些小钱

100

object

!!PS:所有的类都默认继承object类

super

子类通过super来访问父类的属性

我是student无参构造器输出

我是person无参构造器输出

天龙真人表示这里是person有参构造器输出

多态

通过父类运用子类

子类重写了父类的方法,执行子类的方法

实例:

this is Student run~

this is Student run~

多态是方法的多态,属性没有多态父类和子类,有联系类型转换异常!

存在条件:继承关系,方法需要重写,父类引用指向子类对象! Father f1 = new Son();

instanceof

引用传递小实例:

null

爱好者

二、类和对象的创建

使用new关键字创建对象:

使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中 构造器 的调用。

构造器:

  • 和类名相同,没有返回值
  • new本质就是调用构造器
  • 初始化对象的值

实例:

爱好者

18

抽象类和接口

抽象类

//abstract 抽象类

public abstract class Action {

public abstract void doSomething();

}

//不能new这个类,不能实例化

//只能靠子类去new它和实现它,相当于一个约束

//ps:不过抽象类讷讷感写一些普通方法,必须在抽象类中

接口

接口都需要有实现类~

接口不能被实例化,没有构造器

里面的常量都是默认是静态的:public static final

必须在类中重写接口的的方法

三、内部类

直接上代码:

内部类~

10

四、Error和Exception

错误:Error

错误ERROR:错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。

异常:Exception

运行时异常(RuntimeExceotion)

ArraylndexOutOfBoundsException(数组下标越界)NullPointerException(空指针异常)

Arithmetic Exception(算术异常)

MissingResourceException(丢失资源)

ClassNotFoundException(找不到类)等异常,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。

try-catch-finally

catch:捕获异常

来个简单小实例:

不合法

finally是必须执行的~

ps:快捷键~~~Ctrl + Alt + t

主动抛出异常:

throw throws

b不能为0!!

java.lang.Exception

at com.niit.Exception.testDemo01.test(testDemo01.java:22)

at com.niit.Exception.testDemo01.main(testDemo01.java:12)

今日份分享已结束,请大家多多包涵和指点!

文章来源:智云一二三科技

文章标题:干货!5年码农带你深入了解Java面向对象,撸完青铜逆袭变王者

文章地址:https://www.zhihuclub.com/189536.shtml

关于作者: 智云科技

热门文章

评论已关闭

12条评论

  1. Wow, this article is pleasant, my younger sister is analyzing these kinds of things, so
    I am going to tell her.

网站地图