//1、
package com.Hani; class E{ private F b=null; public void fun(){ this.b=new F (this); this.b.fun(); } public void print(){ System.out.println("Hello World!!!"); } }; class F{ private E a=null; public F(E a){ this.a=a; } public void fun(){ this.a.print(); } }; public class DemoThis { public static void main(String args[]){ new E().fun(); } }
//2
package com.Hani; abstract class A{ public abstract void fun(); } class B extends A{ public void fun(){ System.out.println("Hello World!"); } } public class DemoAbstract{ public static void main(String args[]){ B b=new B(); b.fun(); } }
//3.
package com.Hani; abstract class C{ private String name; public C(String name){ this.name=name; } public String getName(){ return this.name; } public abstract void fun(); }; class D extends C { public D(String name){ super(name); } public void fun() { System.out.println(super.getName()); } }; public class DemoAbstrsct1 { public static void main(String args[]){ D d=new D("爱豆鹿晗"); d.fun(); } }
//4.
package com.Hani; public abstract class Person { private String name; private int age; 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; } public Person(String name,int age){ this.name=name; this.age=age; } public Person(){ super(); } public String toString(){ return "Person [name="+ name +",age="+ age +"]"; } public abstract String speak(); }
package com.Hani; public class Student extends Person{ private float score; public Student(String name,int age,float score){ super(name,age); this.setScore(score); } @Override public String speak() { return "学生说-->我的姓名:"+super.getName()+" "+super.getAge()+"岁"+this.score+"分"; } public float getScore(){ return score; } public void setScore(float score){ this.score=score; } }
package com.Hani; public class Worker extends Person{ private float salary; public Worker(String name,int age,float salary){ super(name,age); this.setSalary(salary); } private void setSalary(float salary2) { // TODO 自动生成的方法存根 } @Override public String speak() { return "工人说-->我的姓名:"+super.getName()+" "+super.getAge()+"岁"+this.salary+"元"; } public float getScore(){ return salary; } public void setScore(float salary){ this.salary=salary; } }
package com.Hani; public class DemoStudentWorker { public static void main(String[] args){ Person student=new Student("旺财",13,90.5f); Person worker=new Student("小强",31,7777.7f); print(student.speak()); print(worker.speak()); } private static void print(String speak){ System.out.println(speak); } }