public static void main(String[] args) {
// TODO 自动生成的方法存根
System.out.println("The Blacks! ver.1.0");
//实体化一个people类
people f1 = new people();
//调用set()方法对people封装的变量进行访问
f1.setName("jack");
f1.setAge(20);
//调用get函数输出people封装的变量
System.out.println("name:"+f1.getName()+" "+"age:"+f1.getAge());
//实体化mama类
mama m1 = new mama();
m1.mami();
// mistress m3 = new mistress ();
// m3.mami();
//实体化一个son类
son s1 = new son();
//直接用类名.方法名调用静态方法mychildren()
son.mychildren();
//实体化一个daugther类
daugther d1 = new daugther();
//调用本类里的speak()方法
d1.speak();
d1.father();
mimi m2 = new mimi();
m2.itsname();
}
}
class people{
//类的封装
private String name;
private int age;
//调用get()和set()向封装的内容进行访问
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
//类的继承,新建一个father类
class father{
//定义一个静态变量familyname,随时调用
static String familyname = "Black";
//编写father类的无参构造方法
public father() {
System.out.println(familyname+" is your familyname.");
}
public father(String familyname) {
System.out.println("You familyname is "+familyname);
}
//在father类中编写一段静态方法mychildren
static void mychildren() {
System.out.println("I have two children.");
}
}
//定义一个son类,继承father类
class son extends father {
//编写son类的无参构造方法
public son() {
//利用super(),调用father有参构造方法
super(familyname);
System.out.println("Hello!");
System.out.println("my name is jack"+familyname);
}
//重写father类中的静态方法mychildren()
static void mychildren() {
System.out.println("I`m your son.");
}
}
//定义一个daughter类。继承father类
class daugther extends father{
String name;
//定义本类的一个方法
public void speak() {
System.out.println("Hi!");
}
//重写father类的无参构造方法
public void father() {
System.out.println(familyname+" is my familyname");
//调用this方法,为name赋值
this.name = "Penny";
System.out.println("So,my name is Penny"+familyname);
System.out.println("Is your very lovely daughter!");
}
}
abstract class mother{
public mother() {
System.out.println("ah la,Hello");
}
//编写抽象方法mami(),只写方法名字[public abstract void "方法名"( );]
public abstract void mami() ;
}
//编写mama类,继承抽象类mother
class mama extends mother{
//编写mami()方法
public void mami() {
System.out.println("I`m Jenny Black.");
}
}
//class mistress extends mother{
// public void mami() {
// System.out.println("Fucking crazy!");
// }
//}
//定义一个接口cat
interface cat {
//在接口中定义一个静态方法say()
static void say() {
System.out.println("miao,miao,miao");
}
//在接口中定义一个默认方法itsname()
default void itsname() {
}
}
//定义一个mimi类(小猫的名字),“继承”于cat类
class mimi implements cat{
public mimi() {
System.out.println("We have a cat.");
System.out.println("It`s name");
}
//编写默认方法itsname()
public void itsname() {
System.out.println("mimi!");
}
}
运行结果:
The Blacks! ver.1.0
name:jack age:20
ah la,Hello
I`m Jenny Black.
You familyname is Black
Hello!
my name is jackBlack
I`m your son.
Black is your familyname.
Hi!
Black is my familyname
So,my name is PennyBlack
Is your very lovely daughter!
We have a cat.
It`s name
mimi!