java方法重载和构造方法
//方法重载 同一个类中方法名相同,方法的参数不一样
public void test(int x){
int age = 1;
System.out.println(age);
}
public int test(String a, int x) {
int age = 1;
System.out.println(age);
System.out.println(this.age);
}
//构造方法 快捷键 alt+insert
//继承 语法 class 子类 extends 父类
public class TestExtends {
public static void main(String[] args) {
// C c = new C();
// C c2 = new C("广东省广州市");
// C c3 = new C("jack","广东省广州市");
// c.test();
// c.testC();
// List<String> s = new ArrayList<>();
// B b = new C("jack","广东省广州市");
// b.test();
// System.out.println(b.name);
// System.out.println(b.addr);
// System.out.println(((C)b).addr);
// System.out.println(b instanceof C);
// if (b instanceof C){
// System.out.println(((C)b).addr);
// } else {
// System.out.println("不能类型转换");
// }
// c.test3(new C());
B b = new C();
b.test();
}
}
class A{
public A() {
System.out.println("父父类--无参构造");
}
}
class B extends A{
String name;
public B() {
System.out.println("父类--无参构造");
}
public B(String name) {
this.name = name;
System.out.println("父类--1参构造");
}
public void test(){
System.out.println("父类--方法test");
}
}
class C extends B{
String addr;
public C() {
System.out.println("子类--无参构造");
}
public C(String addr) {
// super(); // 默认调用
this.addr = addr;
System.out.println("子类--1参构造");
}
public C(String name, String addr) {
// this(addr);
// this.name=name;
super(name);
this.addr = addr;
System.out.println("子类--2参构造");
}
public void test(){
// super.test(); // super是否可以省略?
// test();
System.out.println("子类--方法test");
}
public void testC(){
System.out.println("子类--方法testC");
// 下面分别调用的是哪个方法?
test();
this.test();
super.test();
}
public B test2(){
C c = new C();
return c;
}
public void test3(B b){
System.out.println("C.test3");
}
}
// 继承的范围
可以继承:public,默认修饰符修饰的属性和方法
不可继承:private修饰符修饰的属性和方法,父类的构造方法不能被子类继承
子类可以通过super方法调用父类方法
super的用法:只能在子类用 super()方式调用父类id构造方法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异