package com.oop.demo06;
public class Person {
public void run(){
System.out.println("run");
}
}
package com.oop.demo06;
public class Student extends Person{
public void run(){
System.out.println("son");
}
public void eat(){
System.out.println("eat");
}
}
/*
多态注意事项:
1、多态是方法的多态,属性没有多态
2、父类和子类有联系 类型转换异常(ClassCastException)
3、存在条件:继承关系,方法需要重写,父类引用指向子类对象 Father f1=new son();
不能重写,也没有多态的方法
1、static 方法,属于类,它不属于示例
2、final 常量
3、private方法
*/
package com.oop;
import com.oop.demo06.Student;
import com.oop.demo06.Person;
public class Application {
public static void main(String[] args) {
/*
Student s1=new Student();
s1.setName("lisa");
System.out.println(s1.getName());
s1.setAge(150);//不合法的数据
System.out.println(s1.getAge());
*/
//demo06测试
//一个对象的实际类型是确定的
//new Student();
//new Person();
//可以指向的引用类型就不确定了
//Student能够调用的方法都是自己的方法或者继承父类的
Student s1=new Student();
//Person可以指向子类,但是不能调用子类独有的方法
Person s2=new Student();//父类的引用指向子类
Object s3=new Student();
//s2.eat();不能运行,因为对象能执行的哪些方法,主要看对象的左边的类型,和右边关系不大
((Student)s2).eat();//强制转换
s2.run();
s1.run();
s1.eat();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理