2023.3.16-Java-特色語(yǔ)法、類(lèi)的繼承、接口覆寫(xiě)

import java.util.LinkedList;
import java.util.List;
//java里只能有一個(gè)class的前面有public
//static修飾的成員不能訪問(wèn)沒(méi)有static修飾的成員。
public class Main {
? ?public enum MyColor{Red,Yellow,Blue}//定義一個(gè)枚舉類(lèi),所有的枚舉值都是public static final的。
? ?public static void main(String[] args) {
? ? ? ?final double pi = 3.14159; //定義一個(gè)常量,用final關(guān)鍵字,這會(huì)讓pi不允許被重復(fù)賦值。final,即最后一次哦。
? ? ? ?MyColor color = MyColor.Red;
? ? ? ?System.out.println(color);
? ? ? ?for(MyColor mycolor: MyColor.values())//
? ? ? ? ? ?System.out.println(mycolor==color);
? ? ? ?double a = Math.pow(10,3);//
? ? ? ?int b = (int)a%7;
? ? ? ?System.out.println(b);
? ? ? ?//先比大小,再算等不等。
? ? ? ?int aa=4, bb=6;
? ? ? ?boolean yyy,cc=true;
? ? ? ?yyy=aa>bb!=cc;
? ? ? ?System.out.println(yyy);
? ? ? ?/*
? ? ? ?邏輯運(yùn)算:&&,|| 位運(yùn)算:&, |
? ? ? ?三目運(yùn)算符:表達(dá)式1 ? 表達(dá)式2 : 表達(dá)式3,分支
? ? ? ?a>b ? a : b
? ? ? ?instanceof為對(duì)象運(yùn)算符,用來(lái)判斷一個(gè)對(duì)象是否是一個(gè)類(lèi)的實(shí)例。如果是,返回true.
? ? ? ?()為優(yōu)先級(jí)算符最高的算符。
? ? ? ?[]為數(shù)組運(yùn)算符。
? ? ? ?.為訪問(wèn)對(duì)象實(shí)例或者類(lèi)的成員函數(shù)的運(yùn)算符。
? ? ? ?new算符用于創(chuàng)建新的對(duì)象或者數(shù)組,在內(nèi)存中開(kāi)辟一片新的區(qū)域。
? ? ? ? */
? ? ? ?// lambda表達(dá)式
? ? ? ?// (xx,yy) -> {return xx+yy;}
? ? ? ?//順序、分支、循環(huán)?;镜臇|西和C語(yǔ)言是完全一致的,下面盡量展示java的特色。
? ? ? ?int score = 100;
? ? ? ?switch(score/10){
? ? ? ? ? ?case 10 -> System.out.println("優(yōu)秀");
? ? ? ? ? ?default -> System.out.println("默認(rèn)");
? ? ? ?}
? ? ? ?score = 90;
? ? ? ?String info = switch (score) {
? ? ? ? ? ?case 100:
? ? ? ? ? ? ? ?yield "優(yōu)秀";
? ? ? ? ? ?default:
? ? ? ? ? ? ? ?yield "默認(rèn)";
? ? ? ?};
? ? ? ?System.out.println(info);
? ? ? ?List<Integer> list = new LinkedList<Integer>();
? ? ? ?for (int i = 0; i<=100; i++){
? ? ? ? ? ?list.add(i);
? ? ? ?}
? ? ? ?int sum=0;
? ? ? ?for (int cccc :list){
? ? ? ? ? ?sum+=cccc;
? ? ? ?}
? ? ? ?System.out.println(sum);
? ? ? ?/*
? ? ? ?類(lèi)的三個(gè)基本特性:封裝性、繼承性、多態(tài)性。
? ? ? ?對(duì)象是類(lèi)的一個(gè)實(shí)例。對(duì)象只在運(yùn)行的時(shí)候出現(xiàn),new出來(lái)的對(duì)象以類(lèi)為模板,在內(nèi)存中開(kāi)辟空間。
? ? ? ?類(lèi)是同種對(duì)象的抽象綜合,是創(chuàng)建對(duì)象的模板。
? ? ? ?繼承關(guān)系:extends關(guān)鍵詞之后。
? ? ? ?接口名:跟在 implements關(guān)鍵詞之后,說(shuō)明當(dāng)前類(lèi)實(shí)現(xiàn)了哪個(gè)結(jié)構(gòu)定義的功能和方法。
? ? ? ? */
? ? ? ?cat catA = new cat();
? ? ? ?catA.Name="kitty";
? ? ? ?catA.catMiu();
? ? ? ?dog dogB = new dog();
? ? ? ?dogB.Name = "Hotee";
? ? ? ?dogB.Type = "dog";
? ? ? ?dogB.dogWarm();
? ?}
}
class cat extends Main{
? ?String Name;
? ?public void catMiu(){
? ? ? ?this.print();
}
? ?private void print(){
? ? ? ?System.out.println(Name+ MyColor.Yellow);
? ?}
}
interface dogUse{
? ?void dogWarm();
}
interface dogUseUse extends dogUse{
? ?default void dogWarm(){
? ? ? ?System.out.println("Hoo!");
? ?}
}
class dog extends cat implements dogUseUse{
? ?String Type;
? ?@Override
? ?public void dogWarm(){
? ? ? ?catMiu();
? ? ? ?System.out.println(Name+Type);
? ?}
}

D:\SoftwareSet\Java\JDK19\jdk-19.0.2\bin\java.exe "-javaagent:D:\SoftwareSet\Java\javaIDE(jetbrains)\installPath\IntelliJ IDEA Community Edition 2022.3.2\lib\idea_rt.jar=53597:D:\SoftwareSet\Java\javaIDE(jetbrains)\installPath\IntelliJ IDEA Community Edition 2022.3.2\bin" -Dfile.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -classpath D:\AllData\mess\2023_Java_lecture\上課抄代碼\2023年3月16日\(chéng)test\out\production\test cat
Red
true
false
false
6
true
優(yōu)秀
默認(rèn)
5050
kittyYellow
HoteeYellow
Hoteedog
Process finished with exit code 0