java oop介绍(上)

简介: java oop介绍(上)

构造的方法作用: 用来创建对象,并初始化属性值

构造方法的特点:

1没有返回值类型 ,连void都没有

2,方法明和类名一致


注意


1.系统会默认创建一个无参的构造方法

2.如果自定义一个构造方法,系统自带的构造方法没有了

3.构造方法在整个生命周期中只会被调用一次


方法的重载(overload)


1.重载的方法要在同一类中

2.方法名相同

3.参数不相同


this 是当前对象,我们通过this来区分同名的全局变量和局部变量, 加this是全局变量,不加this的是局部变量

静态成员属于类

静态-类-对象-方法

静态属性属于本类所有对象

静态变量发在内存的类中。

全局变量放在内存的堆里与对象相关

局部变量放在在内存的栈里

静态方法不能出现this和super

静态代码块不能调用全局变量和方法

static可以修饰属性,方法,代码块。

实例方法可以同时出现this和super也不要求是第一行

final 常量,不能再次赋值,必须在声明的时候赋值,名称一般由大写字母组成

继承 inheritance 基类(父类) 派生类(子类)


继承的好处复用和扩展


子类调用父类的方法使用super,一个子类只能继承一个父类使用extends进行继承

super代表父类的对象,如果写必须写在子类构造方法第一行,不能访问私有成员

同一个构造方法不能同时出现this和super

子类不能继承父类私有的成员,子类与父类不同包不能继承,默认修饰符的成员也不能继承构造方法

Object类是所有类的祖先都直接或间接继承Object类

super关键字必须出现在子类(子类的方法和构造方法)中,而不允许在其他位置

使用super关键字可以访问父类的成员(属性、方法、构造方法)

注意访问权限的限制,如无法通过super访问private成员


重写的注意事项:


必须有继承关系

重写方法时方法名、参数列表必须相同,返回值相同或为该类型的子类,访问权限必须大于或等于父类的权限

不能继承的成员无法进行重写

执行顺序为先父类后子类,类里的顺序为先属性后方法


多态


多态的三要素:

拥有继承关系

重写了父类的方法

父类作为形参或返回值类型

多态的类型

子类到父类的转换:自动转换 无法调用子类特有的方法

父类到子类的转换:强制类型转换 将父类转换为某个子类后才能调用子类的特定方法,不是转换为真实的子类类型会出现转换异常


多态的优势:


可替换性,可扩充性,接口性,灵活性,简化性

instanceof运算符用来判断一个对象是否属于一个类或接口,返回boolean类型的值多用于if判断前提必须具有继承关系,否则会编译错误

相关文章
|
1天前
|
Java
04|零基础玩转面向对象编程:Java OOP
04|零基础玩转面向对象编程:Java OOP
5 0
|
6天前
|
Java
手把手教你用java OOP实现猜拳游戏!好玩有用!
手把手教你用java OOP实现猜拳游戏!好玩有用!
18 3
手把手教你用java OOP实现猜拳游戏!好玩有用!
|
5月前
|
Java
Java基础知识: 解释一下面向对象编程(OOP)的概念。
Java基础知识: 解释一下面向对象编程(OOP)的概念。
33 0
|
6月前
|
设计模式 Java 开发者
深入Java了解面向对象编程(OOP)
深入Java了解面向对象编程(OOP)
|
9月前
|
存储 Java
java oop介绍(下)
java oop介绍(下)
|
JSON 小程序 Java
java oop经典案例开发与源码 -java swing 羊了*羊 简易版本开发 (1) 地图模块编辑器开发(附github源码地址)
java oop经典案例开发与源码 -java swing 羊了*羊 简易版本开发 (1) 地图模块编辑器开发(附github源码地址)
java oop经典案例开发与源码 -java swing 羊了*羊 简易版本开发 (1) 地图模块编辑器开发(附github源码地址)
|
设计模式 安全 Java
java的自我修养——oop上半部分
java市面上的教程质量参差不齐,这篇能够更好的带你理解oop思想,入门java,这部分java的自我修养分为上下两部
106 0
java的自我修养——oop上半部分
|
Java
OOP下半部分-Java与生活
OOP下半部分-Java与生活
92 0
OOP下半部分-Java与生活
|
设计模式 自然语言处理 安全
OOP上半部分-Java与生活
OOP上半部分-Java与生活
144 0
OOP上半部分-Java与生活
|
设计模式 存储 IDE
阿里Java编程规约【四】OOP规约
1. 【强制】避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用 类名来访问即可。 2. 【强制】所有的覆写方法,必须加 @Override 注解。 说明:getObject() 与 get0bject() 的问题。一个是字母的 O,一个是数字的 0,加 @Override 可以准确判断是否覆盖 成功。另外,如果在抽象类中对方法签名进行修改,其实现类会马上编译报错。
142 0