【java】学习路线7-继承、super方法、重写、重载
/*继承-java只有单继承
如果你创建了很多个class,但是之间有很多相同的成员变量和成员方法,修改的时候又要多处修改好麻烦,
此时就可以创建多一个类来存储这些重复的东西,统一管理。相当方便.
*/
/*
super方法
调用父类的构造方法
如果想调用带参数的父类构造方法,只需要使用super(...)即可.
如果需要调用同名的父类中的方法,使用super(). 即可.
*/
/*
注意:static修饰词无所谓是继承的还是现场实例化的,凡是用到我static所在类的,都只有唯一一个!
*/
/*
访问同名属性采用就近原则
直接写就是访问当前的代码块
this就是访问当前类中的属性
supper访问父类中的属性
*/
/*
继承中的构造:通过构造子类对象的时候都会调用父类的构造方法,显式隐式
如果父类设置了有参数的构造方法,则必须用supper(...),系统不会默认调用一个
*/
/*
可以调用其他构造方法,使用this(...)即可
但是在子类又调用父类构造方法,又调用子类的另一个构造方法,是不可以的。
this(..)和super(..)都必须要放在第一条语句中,所以不能!
*/
/*
重写方法
(返回值 方法名 参数)三要素
只要子方法中有方法 ?? 和父类中的一样,则代表父类的方法被重写了,按照子类的为准
注意 1 不能重写父类中的private方法
2 不能重写为权限更低的方法,例如public不能重写为private
*/
/*
重载方法 -
final修饰的是
类 :不能被继承的类
方法:不能被重写的方法
变量:不能被重新赋值 (常量)
常量 : 字面值常量 子定义常量(final)
与重写方法不同的是,重写方法是在子类父类里边的,但是重载方法是在同一个类当中的
参数 方法名 返回值
不一样 一样 不要求
*/
public class Learn06{
public static void main (String[] as){
Teacher tt = new Teacher();
//System.out.println(tt.getName());
}
}
class Person{//父类
private static String name;
public Person(){
System.out.println("hello");
}
public Person(String name){
System.out.println(name);
setName(name);
}
public void setName(String name){
this.name=name;
}
public String getName(){
return this.name;
}
private void sayHello(){
System.out.println("你好ya 嘿嘿!~");
}
public void marked(){
System.out.println("父类的narked方法");
}
}
class Teacher extends Person{
private int level;
public Teacher(){
super("杰杰");//调用父类的构造方法2
marked();//调用子类中的marked
super.marked();//调用父类中的marked
Person ps = new Person();
Person ps1= new Person();
ps.setName("-wwzzjj-");
ps1.setName("aaa");
System.out.println("----" + ps.getName() + "---"+ super.getName());
System.out.println("----------");
sayHello();
}
public void marked(){
System.out.println("子类的narked方法");
}
}
最新文章
- 命名sql数据集
- CSS属性之float学习心得
- JavaScript类型判断
- NMAP 基础教程
- [3D跑酷] UI事件处理系统
- Python系统调用——运行其他程序
- 随心所欲的DateTime显示格式
- unix 文件属性
- Unix/Linux环境C编程入门教程(35) 编程管理系统中的组
- Sphinx Makefile
- c# 执行js的方法
- (一〇一)集成静态库RHAddressBook实现OC访问通讯录
- Linux set命令参数及用法详解
- vue-cli ——解决多次复用含有Echarts图表组件的问题
- java引用
- QT 子窗口退出全屏
- POJ 3273-Monthly Expense 求分组和的最小的最大值【二分答案】
- STM32F4 -- How to use the DMA burst feature
- idea 同project添加多个module maven支持
- ReactNative应用<;DCL每日查看>;开发总结