笼中雀-爱代码爱编程
day12:今天学了abstract抽象 , final关键字 和 interface接口
/**
* @author YHJ
* @description TODO
* @date 2023/3/17 14:26
* 分析:如果一个属性的值我们需要其不能被改变 可以使用final修饰
* 这样的数据通常也没有必要存在多份 所以我们可以再加上static修饰
*
* 静态常量赋值:
* 静态常量通常(99%)在定义的时候直接赋值 或者 在静态代码块中赋值
* 这两种方式都是为了保证在使用静态常量之前 是有值的
*
* static final : 静态常量
*/
public class TestFinal2 {
static final double PI = 3.14;
static final String COUNTRY;
static{
COUNTRY = "中国";
}
public TestFinal2() {
// COUNTRY = "中国"; 在实例的构造方法 不能访问静态的内容
}
public static void main(String[] args) {
System.out.println(TestFinal2.PI);
System.out.println(TestFinal2.COUNTRY);
}
}
/**
* @author YHJ
* @description TODO
* @date 2023/3/17 16:16
* 当一个类既需要继承类 又需要实现接口
* 先继承 后实现
*
*/
public class SmartPhone extends Phone implements Audio,Video,Photo,NetWork,Game{
@Override
public void call() {
System.out.println("智能手机打电话,语音拨号,体验很不错");
}
@Override
public void sendMessage(String message) {
System.out.println("智能手机发短信,手写输入:" + message);
}
@Override
public void playAudio(String audioName) {
System.out.println("智能手机播放音乐,音质很棒" + audioName);
}
@Override
public void playGame(String gameName) {
System.out.println("智能手机打游戏,体验和丝滑" + gameName);
}
@Override
public void connect() {
System.out.println("智能手机连接5G网络 飞一般的感觉");
}
@Override
public void takePhoto() {
System.out.println("智能手机拍照 咔嚓一下 记录美好 记录你我");
}
@Override
public void playVideo(String videoName) {
System.out.println("智能手机看片 高清无码画质");
}
}