Android java基础_类的继承_android 类继承(2)

复制代码
运行结果:

root@ubuntu:/home/topeet/guyilian# javac Ext2.java

root@ubuntu:/home/topeet/guyilian# java Ext2

10

ustc

复制代码
**子类继承父类的方法和属性都可以进行覆写,我们在子类覆写父类的printInfo方法。**

class Person {

private int age;

复制代码
public void setAge(int age) {
	if (age < 0 || age > 200)
		age = 0;
	else {
		this.age = age;
	}
}

public int getAge() {
	return age;
}	

public void printInfo() {
	System.out.println("age = "+age);
}

}

class Student extends Person{

private String school;

复制代码
public void setSchool(String school) {
	this.school = school;
}

public String getSchool() {
	return school;
}	

public Student(String school) {
	this.school = school;
}

/* override */
public void printInfo() {
	System.out.println("school = "+school+"; age = "+getAge());
}

}

public class Ext3 {

public static void main (String args\[\]) {

Student stu = new Student("ustc");

复制代码
	stu.setAge(10);

	System.out.println(stu.getAge());
	System.out.println(stu.getSchool());
	stu.printInfo();
}

}

复制代码
运行结果:

root@ubuntu:/home/topeet/guyilian# javac Ext3.java

root@ubuntu:/home/topeet/guyilian# java Ext3

10

ustc

school = ustc; age = 10

复制代码
**实例化子类对象时,先调用父类的构造方法,再调用子类的构造方法,super()函数在子类中可以指定调用父类构造函数的类型。**

class Person {

private int age;

复制代码
public void setAge(int age) {
	if (age < 0 || age > 200)
		age = 0;
	else {
		this.age = age;
	}
}

public int getAge() {
	return age;
}	

public void printInfo() {
	System.out.println("age = "+age);
}

public Person () {System.out.println("Person ()");}
public Person (int age) {
	System.out.println("Person (int age)");
	this.age = age;
}

}

class Student extends Person{

private String school;

复制代码
public void setSchool(String school) {
	this.school = school;
}

public String getSchool() {
	return school;
}	

public Student(String school) {
	/* will call the super() */
	//super();
	super(5);
	System.out.println("Student(String school)");
	this.school = school;
}

/* override */
public void printInfo() {
	System.out.println("school = "+school+"; age = "+getAge());
}

}

public class Ext4 {

public static void main (String args\[\]) {

Student stu = new Student("ustc");

复制代码
	//stu.setAge(10);

	System.out.println(stu.getAge());
	System.out.println(stu.getSchool());
	stu.printInfo();
}

}

复制代码
运行结果:

root@ubuntu:/home/topeet/guyilian# javac Ext4.java

root@ubuntu:/home/topeet/guyilian# java Ext4

Person (int age)

Student(String school)

5

ustc

school = ustc; age = 5

复制代码
**抽象类规定子类必须实现的方法,起"模板"作用,缺点不能实例化对象,子类必须覆写全部抽象方法。**

abstract class Father {

private int money;

复制代码
public int getMoney() {return money; }
public void setMoney(int money) {this.money = money; }

public abstract void study();

}

class Son extends Father{

public void study() {System.out.println("I am study"); }

}

public class Ext6 {

public static void main (String args\[\]) {

//Father f = new Father();

Son son = new Son();

son.study();

复制代码
}

}

复制代码
运行结果:

root@ubuntu:/home/topeet/guyilian# javac Ext6.java

root@ubuntu:/home/topeet/guyilian# java Ext6

I am study

复制代码
**作用:跟抽象类相似,起"模板"作用;子类可以继承多个接口,突破"单继承"的限制。**

abstract class Father {

private int money;

复制代码
public int getMoney() {return money; }
public void setMoney(int money) {this.money = money; }

public abstract void study();

}

class Son extends Father{

public void study() {System.out.println("I am study"); }

}

public class Ext6 {

public static void main (String args\[\]) {

//Father f = new Father();

Son son = new Son();
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数嵌入式工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以+V:Vip1104z获取!!! (备注:嵌入式)

最后

资料整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~

你的支持,我的动力;祝各位前程似锦,offer不断,步步高升!!!

后续会持续更新**

如果你觉得这些内容对你有帮助,可以+V:Vip1104z获取!!! (备注:嵌入式)

最后

资料整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~

你的支持,我的动力;祝各位前程似锦,offer不断,步步高升!!!

更多资料点击此处获qu!!

相关推荐
程序员阿明9 分钟前
idea把插件啥的不默认放在C盘
java·ide·intellij-idea
linweidong1 小时前
中科闻歌Java面试题及参考答案
java·python·大模型·提示词·ai agent·mcp·rag原理
OpenAnolis小助手1 小时前
一句话看透 JVM,SysOM 诊断 Skill 新增 Java 应用诊断能力
java·开发语言·jvm·阿里云·操作系统控制台·sysom
小玮看世界1 小时前
[Python]OD算法在OD实际运用转化参考清单
开发语言·python·算法
ForteScarlet1 小时前
Kotlin 2.4.20 现已发布,新特性多不多?
android·java·开发语言·开源·kotlin·jetbrains
萧瑟余晖1 小时前
Java深入解析篇六十二之安全机制详解
java·开发语言
小刘在重生~2 小时前
Java 常用类|包装类 装箱拆箱、Integer 缓存面试题
java·python·缓存
Orange_sparkle2 小时前
Pi Agent vs LangGraph:从人机交互、企业 RAG 到持久化工作流的完整选型指南
java·网络·人机交互
菜鸟~noob2332 小时前
【电子战】 第01篇:噪声、门限与虚警/检测概率(PFA/PD)【含matlab代码】
开发语言·matlab
奇牙coding1232 小时前
GPT-6-Astra API 接入教程:OpenRouter 路由配置 + Python/curl 示例 + 静默降级踩坑
开发语言·python·gpt·ai