网站首页 > java教程 正文
特点
1.以通用类为基础类,其他类进行继承该基础类
2.java中多继承是不行的,但接口可以。
- 通过关键字 extends 继承
- 继承是将基础类中的所有属性和方法都挪到新的类中
有两个类:
class A{
}
class B{
}
//C继承A
class C extends A{
}
//不可以多继承,这是错误的。
class C extends A,B{
}
super关键字
super与this相似,this指的是当前对象,当然this也可以调用当前类的构造器,
而super指的是当前子类的父类, super();是调用对父类默认构造器。
存在于子类中,隐藏的,不用写出来,其作用是调用父类默认构造器,如果父类构造器是有参数的,那么不写super();就不能调用默认父类构造器。
可以将super(“params”);写出来 通过传递一个参数,调用相应的构造器。
final关键字
1.修饰在变量上,这个变量就不能被修改 final x=18; 则x不能再被修改
2.修饰在属性上,要么直接给初始值,要么在构造器中给初始化,但同时有多个构造器时,这些构造器都需要给final 修饰的属性进行初始化
3.修饰在方法上
final修饰的方法,不能被重写,与修饰在变量上一样 不能被修改。
4.修饰在类上
被final修饰的类不能被继承
抽象类
什么是抽象?
抽象就是 有相同的行为,但具体的表现不能确定。
也就是下方,Student和Worker都有抽烟这个行为,但是具体的表现不同, 一个在厕所抽烟,一个一边搬砖一边抽烟。
/**抽象类*/
abstract class Person{
String name;
int age;
//抽象方法
public abstract void smoke();
}
class Student extends Person{
//复写
public void smoke(){
System.out.println(this.name+"厕所偷偷在抽烟");
}
}
class Worker extends Person{
//复写
public void smoke(){
System.out.println(this.name+"一边搬砖一边抽烟");
}
}
public class AbstractTest{
public static void main(String[] args){
Student s=new Student();
s.name="张学生";
s.smoke();
Worker w=new Worker();
w.name="李员工";
w.smoke();
}
}
关键字 abstract
被关键字abstract修饰的方法,就是抽象方法,。
1.抽象类可以没有抽象方法,但是含有抽象方法的类一定是抽象类,一定要加abstract
2.抽象类不能实例化,(不能创建对象),只能被继承
猜你喜欢
- 2024-10-03 Java中的继承关系(java中的继承关系是)
- 2024-10-03 Java面向对象之继承(java面向对象继承例题)
- 2024-10-03 「Java入门」十八 面向对象的三大特征之一-继承
- 2024-10-03 [Java基础]09.继承(java基础案例教程第二版)
- 2024-10-03 Java中的继承、封装、多态 #Java开发
- 2024-10-03 Java中的继承与组合(java中继承的概念以及使用继承的好处)
- 2024-10-03 《极简Java新手编程之道》8.1.1 Java语言中实现继承
- 2024-10-03 Java:类与继承(java类与继承抽象类)
- 2024-10-03 Java基础——面对对象-继承(面对对象的特征有哪些方面java基本数据类型有哪些)
- 2024-10-03 你真的熟悉Java中的继承与多态?给你几分钟能回答上来?
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)