// 父类
package pet;
public class Pet {
public String name;
public int age;
public Pet() {
}
public void eat(){
System.out.println("会吃东西");
}
public void drink(){
System.out.println("会喝水");
}
public void shout(){
System.out.println("会叫");
}
}
//子类,猫类
package pet;
public class Cat extends Pet {
public void climbTree(){
System.out.println(super.name+"猫会爬树!"+"年龄是"+super.age+"岁");
//super关键字,在子类中调用父类的成员变量(public protected修饰的)
}
}
// 子类,狗类
package pet;
public class Dog extends Pet {
public void police(){
System.out.println(super.name+"狗会警戒!"+"年龄是"+super.age+"岁");
}
}
// 测试类
package pet;
public class TestPet {
public static void main(String[] args) {
// TODO Auto-generated method stub
Cat cat=new Cat();
cat.name="汤姆";
cat.age=1;
cat.climbTree();
cat.drink();
cat.eat();
cat.shout();
Dog dog=new Dog();
dog.name="二哈";
dog.age=2;
dog.police();
dog.drink();
dog.eat();
dog.shout();
}
}
结果输出
自行车和公路赛
package bike;
public class Bike {
public int wheel=2;//轮子数
public void run(){
System.out.println("能跑!");
}
}
//公路赛车类
package bike;
public class RaceBike extends Bike {
public int gear=2;//变速齿轮
public void speedUp(){
System.out.println("能加速!");
}
public void speedDown(){
System.out.println("能减速!");
}
}
// 测试类
package bike;
public class TestBike {
public static void main(String[] args) {
// TODO Auto-generated method stub
//实例化对象
RaceBike rb=new RaceBike();
//调用父类轮子数
System.out.println(rb.wheel);
//调用本类轮子数
System.out.println(rb.gear);
//调用本类方法
rb.speedUp();
rb.speedDown();
//调用父类方法
rb.run();
}
}
结果输出
对象数组
package test;
public class Student {
// ctrl+shift+f 格式化代码块
// source-->倒数第三个 快速生成有参构造方法
// source-->倒数第二个 快速生成无参构造方法
private String name;//姓名
private double score;//分数
public Student() {
}
public Student(String name, double score) {
super();
this.name = name;
this.score = score;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
}
// 测试类
package test;
public class TestStudent {
public static void main(String[] args) {
// TODO Auto-generated method stub
Student stu0=new Student("张三1",90);
Student stu1=new Student("张三2",70);
Student stu2=new Student("张三3",80);
Student stu3=new Student("张三4",40);
Student stu4=new Student("张三5",70);
Student stu5=new Student("张三6",56);
Student stu6=new Student("张三7",97);
Student stu7=new Student("张三8",89);
Student stu8=new Student("张三9",70);
Student stu9=new Student("张三10",79);
//对象数组,数组中保存的都是对象
Student[] stus={stu0,stu1,stu2,stu3,stu3,stu4,stu5,stu6,stu7,stu8,stu9};
double totle=0;
for(int i=0;i<stus.length;i++){
Student stu=stus[i];
System.out.println("学生姓名是:"+stu.getName());
totle+=stu.getScore();
}
System.out.println("总分是:"+totle);
double ave=totle/stus.length;
System.out.println("平均分是:"+ave);
}
}
结果输出
静态成员变量调用后会累加
package test;
public class Count {
public static int num=0;//静态成员变量
public void add(){
Count.num++; //通过"类名.变量 "进行调用
}
}
// 测试类
package test;
public class TestCount {
public static void main(String[] args) {
// TODO Auto-generated method stub
Count count1=new Count();
count1.add();
Count count2=new Count();
count2.add();
System.out.println(Count.num);//通过"类名.变量 "进行调用
}
}
结果输出