1、創(chuàng)建一個(gè)Teacher.java文件
創(chuàng)建一個(gè)類
public class Teacher {
// 屬性:姓名、所教課程名、性別、年齡
String name;
String teachClass;
String sex;
int age;
public void setName(String name) {
this.name = name;
}
public void setTeachClass(String teachClass) {
this.teachClass = teachClass;
}
public void setSex(String sex) {
this.sex = sex;
}
public void setAge(int age) {
this.age = age;
}
public Teacher() {
}
// 方法:獲得老師所教授的課程名
public void getClass(String name, String teachClass) {
System.out.println(name + "老師所教授的課程是" + teachClass);
}
}
2、創(chuàng)建一個(gè)Main.java文件
這里是創(chuàng)建對(duì)象
public class Main {
public static void main(String[] args) {
Teacher teacherA = new Teacher();
teacherA.setName("馬冬梅");
teacherA.setSex("女");
teacherA.setAge(22);
// 具體對(duì)象的行為:馬冬梅老師教授的課程是生物
teacherA.getClass(teacherA.name, "生物");
}
}
3、繼承
繼承只能是單繼承,即一個(gè)子類只能繼承一個(gè)父類
創(chuàng)建一個(gè)Chinese.java
public class Chinese extends Teacher {
// 定義自己獨(dú)有的屬性:工作內(nèi)容
String content;
// 定義自己獨(dú)有的方法
public void writeModels(String name, String content) {
System.out.println(name + "老師主要工作內(nèi)容是" + content);
}
public static void main(String[] args) {
Chinese teacherB = new Chinese();
teacherB.setName("夏洛特");
teacherB.setSex("男");
teacherB.setAge(30);
teacherB.getClass(teacherB.name, "語(yǔ)文");
teacherB.writeModels(teacherB.name, "唐宋詩(shī)詞三百首");
}
}
附加筆記:
-
abstract修飾的類和方法:
1、abstract修飾的類為抽象類,此類不能實(shí)例化(new)對(duì)象。
2、抽象類的作用:
(1)可以被子類繼承,提供共性屬性和方法;
(2)可以聲明為引用,更自然的使用多態(tài)。
3、abstract修飾的類方法。只有方法聲明,沒(méi)有方法實(shí)現(xiàn);
image.png 注意
抽象類中允許有普通方法,但是不會(huì)只有普通方法;
普通類繼承抽象類,必須重寫所有的抽象方法;
抽象類繼承抽象類,可以有選擇性地重寫其中的抽象方法。
