Java的高级特性

类的继承

继承是从已有的类中派生出新的类,新的类能拥有已有类的属性和行为,并且可以拓展新的属性和行为

复制代码
public class 子类 extends 父类{
         子类类体
}

优点 代码的复用

提高编码效率

易于维护

使类与类产生关联,是多态的前提

缺点 类缺乏独立性

增强了类与类的耦合性

在创建子类的时候,调用子类的构造方法,必须先调用父类的构造方法,如果子类没有调用父类的构造方法,则默认加super()来调用父类的默认无参构造方法,父类无无参构造方法,则编译出错

super()只能出现在子类的构造方法中,且必须是第一行

super(参数列表)中的参数,决定了调用父类的哪个构造方法

this()必须在构造方法第一行

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

super是指向父类的引用 this是指向子类的引用

类似与操作系统中的文件夹,使得各个类之间有隐私,不被外界所知,可以避免类的命名冲突,类的全名是包名.类名 并且包也可以是类,接口和子包的集合

封装

使用访问权限对类的成员进行控制,并不是private,对成员的任何控制都是封装,

public> protected > friendly > private

公共访问方法

1 读取 getter方法

public 返回值类型 getXxx(){

return 属性名;

}

2 设置 setter方法

public void setXxxx(数据类型参数值){

属性名 = 参数值;

}

相关推荐
freyazzr13 分钟前
C++八股 | Day3 | 智能指针 / 内存管理 / 内存分区 / 内存对齐
开发语言·c++
序属秋秋秋19 分钟前
《C++初阶之入门基础》【普通引用 + 常量引用 + 内联函数 + nullptr】
开发语言·c++·笔记
星辰离彬20 分钟前
Java 高级泛型实战:8 个场景化编程技巧
java·开发语言·后端·程序人生
筏.k20 分钟前
C++ 网络编程(10) asio处理粘包的简易方式
java·网络·c++
纨妙20 分钟前
python打卡day47
开发语言·python
ghost14322 分钟前
C#学习第29天:表达式树(Expression Trees)
开发语言·c#
Auscy27 分钟前
JavaScript 数组学习总结
开发语言·javascript·学习
虾球xz28 分钟前
CppCon 2015 学习:Transducers, from Clojure to C++
开发语言·c++·学习
不二狗1 小时前
每日算法 -【Swift 算法】电话号码字母组合
开发语言·算法·swift
张哈大1 小时前
【 java 虚拟机知识 第一篇 】
java·开发语言·jvm·笔记·缓存