最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

千鋒教育Java入門全套視頻教程(java核心技術(shù),適合java零基礎(chǔ),Java

2023-07-12 17:02 作者:這有啥好看的啊  | 我要投稿

第三周周四7.6


創(chuàng)建數(shù)組


存儲5個學(xué)生對象(姓名,年齡)


輸出年齡大于23的人


```java

package com.qf.zhousi;


public class Demo01 {


public static void main(String[] args) {

Student[] stu1= new Student[5];

stu1[0] = new Student("張三",18);

stu1[1] = new Student("李四",14);

stu1[2] = new Student("王五",22);

stu1[3] = new Student("趙六",34);

stu1[4] = new Student("劉二",26);

for(int i=0;i<5;i++) {

if(stu1[i].age>23)

System.out.println(stu1[i].name);

}

}


}

//學(xué)生類

class Student{

//屬性

String name;

int age;

//方法

public Student() {

}

public Student(String name, int age) {

this.name = name;

this.age = age;

}

}

```


晨考錯題


---------------------------------------------------------------------------------------


## 代碼塊


定義在方法中的代碼塊叫做局部代碼塊


自動執(zhí)行無需手動調(diào)用


能縮小數(shù)據(jù)的訪問范圍


```java

public class Demo01


public static void main(string[]args){


??//局部變星


??int num 10;


??System.out.println("HelloWorld001");


??system.out.println("HelloWorld002");

??System.out.println("HelloWorld003");


??//局部代碼塊

??//局部代碼塊可以訪問局部變量

?? System.out.println("Helloworld004===>"+num);


??//局部代碼塊中的變量

??int number 10000;

??//方法中的代碼不能訪問局部代碼塊中的變量

??//System.out.println("HelloWorld004===>"+number);

??System.out.println("HelloWorld005");

??system.out.println("Helloworld006");

??System.out.println("HelloWorld007");


```


**構(gòu)造代碼塊**


也稱為動態(tài)代碼塊

定義位置類中方法外,和構(gòu)造方法同級別

執(zhí)行時間早于構(gòu)造方法

加載時間和成員變量相同

可以把構(gòu)造方法中相同的代碼提取出來放入構(gòu)造代碼塊中


```java

class Consumer{

??String name;

??String hobby;

??{

??//動態(tài)代碼塊【構(gòu)造代碼塊】

??//System.out,println("動態(tài)代碼塊---);

??System.out.println("歡迎光臨,大爺里面請");

??}

??public Consumer(){

??public Consumer(string name){

??public Consumer(string name,string hobby){

??}

}

```


**靜態(tài)代碼塊**


使用static修飾的代碼塊成為靜態(tài)代碼塊

靜態(tài)代碼塊在類加載的時候就加載了

創(chuàng)建多個對象過程中只執(zhí)行一次

適合驅(qū)動加載等只執(zhí)行一次的內(nèi)容

靜態(tài)代碼塊只能訪問靜態(tài)數(shù)據(jù)




**程序中運行的順序**


啟動程序

開啟父類加載

父類靜態(tài) 屬性/代碼塊

開啟子類加載

子類靜態(tài) 屬性/代碼塊

進(jìn)入子類構(gòu)造

由子類構(gòu)造直接進(jìn)入父類構(gòu)造(因為父類構(gòu)造寫在子類構(gòu)造的第一行)

父類構(gòu)造代碼塊

父類構(gòu)造方法(中的局部代碼塊)

子類構(gòu)造代碼塊

子類構(gòu)造方法(中的局部代碼塊)


![image-20230706105813500](C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230706105813500.png)


## 類中的內(nèi)容:


實例屬性


靜態(tài)屬性


靜態(tài)代碼塊


構(gòu)造代碼塊


構(gòu)造方法


內(nèi)部類


方法




## final


final類不能被繼承,沒有子類,其中一般都是不可改變的規(guī)則


final方法是最終方法可以被繼承不能被重寫


final變量


final修飾的基本類型變量,值不能改變,只能賦值一次


final修飾的引用類型對象,里面的值可以修改,但是地址值不能改變


final定義成員變量/實例變量


可以在創(chuàng)建時賦值,可以在構(gòu)造代碼快中賦值,可以在方法中賦值,只要在對象創(chuàng)建之前賦值就可以,只能賦值一次不能修改。


靜態(tài)最終變量是在類加載完之前賦值


# 接口


使用interface聲明的內(nèi)容稱為接口


接口是一種規(guī)范:


表明了能做的事情,沒有具體實現(xiàn)的代碼


**定義接口:**




```java

interface 接口名{

? 屬性

? ?

? 方法

}

```


**接口中的屬性**


公共開的 并且 是靜態(tài)的?最終的


**方法**


都是公開抽象方法


默認(rèn)使用 public abstract 修飾




JDk8之后可以書寫static或者Default修飾的方法(沒人用過)


**接口和抽象類對比**


?相同:


都能生產(chǎn)字節(jié)碼文件


都擁有Object中的屬性和方法?




都不能自己創(chuàng)建對象


都可以聲明為引用類型


不同:


抽象類中可以定義實例屬性、實例方法、構(gòu)造方法、代碼塊、抽象方法等


接口中屬性都是靜態(tài)抽象公開的


方法都是公開抽象的


**常量接口**


把項目中所有的常量都收集出來放入同一個接口文件中


統(tǒng)一定義和管理


## 課后作業(yè):


1、編寫代碼驗證裝箱和拆箱【類型轉(zhuǎn)換】


```java

package com.qf.day14homework;


public class Demo01 {


public static void main(String[] args) {

/**

*?1、編寫代碼驗證裝箱和拆箱【類型轉(zhuǎn)換】

*/

Person student1=new Students();//裝箱

student1.eat();//調(diào)用自己的方法

Students student2=(Students)student1;//拆箱可以調(diào)用自己的方法

student2.study();//拆箱調(diào)用自己的學(xué)習(xí)方法

}

}

//父類

class Person{

void eat() {

System.out.println("吃飯");

}

}

//子類

class Students extends Person{

void study() {

System.out.println("學(xué)習(xí)");

}

}

```


2、驗證static修飾各種數(shù)據(jù)的特點


```java

package com.qf.day14homework;



public class Demo02 {

public static void main(String[] args) {

/**

* 2、驗證static修飾各種數(shù)據(jù)的特點

*/

Animal01.eat();//靜態(tài)的方法可以直接調(diào)用

Animal01.names="二狗";//靜態(tài)屬性可以直接調(diào)用,修改后全部都受影響

Animal01 dog02=new Dog01();

System.out.println("實例屬性:"+dog02.name);

System.out.println("靜態(tài)屬性:"+dog02.names);

Dog01 dog01=new Dog01();

dog01.names="小奶狗";//修改靜態(tài)屬性

System.out.println("父類調(diào)用靜態(tài)屬性names:"+Animal01.names);

System.out.println("子類02,沒有調(diào)用dog02修改靜態(tài)屬性names:,此時的names為:"+dog02.names);

System.out.println("子類01,調(diào)用修改靜態(tài)屬性names:"+dog01.names);

}

}

//父類

class Animal01{

//實例方法

String name = "張三";

//靜態(tài)屬性

static String names = "狗蛋";

//靜態(tài)代碼塊

static {

System.out.println(names+"的靜態(tài)代碼塊");

}

//構(gòu)造代碼塊

{

System.out.println("構(gòu)造代碼塊");

}

//構(gòu)造器

public Animal01(String name) {

this.name = name;

}

public Animal01() {

}

//靜態(tài)方法

static void eat() {

System.out.println(names+"在吃飯");

}

//公開方法

void sleep(){

System.out.println(name+"在睡覺");

}

}

//子類

class Dog01 extends Animal01{

}


```


3、編寫代碼,驗證類中個各種元素加載的時機


```java

package com.qf.day14homework;


public class Demo03 {

public static void main(String[] args) {

/**

* 3、編寫代碼,驗證類中個各種元素加載的時機

*/

//創(chuàng)建對象

Son son01=new Son();

}

}

//父類

class Fater{

//實例屬性

String name="a";

//靜態(tài)屬性

static int age=1;

//靜態(tài)代碼塊

static {

System.out.println("父類靜態(tài)屬性:"+age);

System.out.println("父類靜態(tài)代碼塊");

eat();

}

//構(gòu)造代碼塊

{

sleep();

System.out.println("父類構(gòu)造代碼塊");

}

//構(gòu)造器

public Fater() {

System.out.println("父類構(gòu)造器"+name);

}

//靜態(tài)方法

static void eat() {

System.out.println("父類靜態(tài)方法");

}

//方法

void sleep() {

System.out.println("父類方法");

}

}

//子類

class Son extends Fater{

//實例屬性

String names="a";

//靜態(tài)屬性

static int ages=1;

//靜態(tài)代碼塊

static {

System.out.println("子類靜態(tài)屬性:"+ages);

System.out.println("子類靜態(tài)代碼塊");

eat();

}

//構(gòu)造代碼塊

{

sleep();

System.out.println("子類構(gòu)造代碼塊");

}

//構(gòu)造器

public Son() {

System.out.println("子類構(gòu)造器"+names);

}

//靜態(tài)方法

static void eat() {

System.out.println("子類靜態(tài)方法");

}

//方法

void sleep() {

System.out.println("子類方法");

}

}

```


![image-20230706172352270](C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230706172352270.png)


4、汽車有很多功能

飛行【接口】

過河【接口】

越野【接口】

汽車類Auto【抽象類】

start

stop

run

創(chuàng)建Auto的子類,選擇性的實現(xiàn)上面的接口,使用多態(tài)方式創(chuàng)建對象,展示信息


```java

package com.qf.day14homework;


public class Demo04 {


public static void main(String[] args) {

/**

* 4、汽車有很多功能

飛行【接口】、過河【接口】、越野【接口】、汽車類Auto【抽象類】

方法:start、stop、run

創(chuàng)建Auto的子類,選擇性的實現(xiàn)上面的接口,使用多態(tài)方式創(chuàng)建對象,展示信息

*/

//接口創(chuàng)建AiCar的對象

Fly flyCar =new AiCar();

//調(diào)用接口指定的方法

flyCar.fly();

//向上轉(zhuǎn)型

AuTo autoCar = new NewEnergyVehicles();

//調(diào)用方法

autoCar.start();

autoCar.run();

autoCar.stop();

//創(chuàng)建子類對象

AiCar aiCar = new AiCar();

//調(diào)用接口方法

aiCar.fly();

aiCar.acrossTheRiver();

aiCar.crossCountry();

//調(diào)用父類方法

aiCar.stop();

}

}

//飛行接口

interface Fly{

//抽象方法

void fly();

}

//過河接口

interface AcrossTheRiver{

//抽象方法

void?acrossTheRiver();

}

//越野接口

interface CrossCountry{

//抽象方法

void?crossCountry();

}

//父類汽車類

abstract class AuTo{

//方法1

abstract void start();

//方法2

abstract void stop();

//方法3

abstract void run();

}

//子類新能源汽車

class NewEnergyVehicles extends AuTo implements AcrossTheRiver{

@Override

void start() {

System.out.println("啟動新能源汽車");

}

@Override

void stop() {

System.out.println("新能源汽車停車");

}

@Override

void run() {

System.out.println("新能源汽車正在行駛");

}

@Override

public void acrossTheRiver() {

System.out.println("新能源汽車能夠過河");

}

}

//子類人工智能汽車

class AiCar extends AuTo implements AcrossTheRiver,CrossCountry,Fly{

@Override

public void fly() {

System.out.println("人工智能汽車能飛");

}

@Override

public void crossCountry() {

System.out.println("人工智能汽車能夠越野");

}


@Override

public void acrossTheRiver() {

System.out.println("人工智能汽車能過河");

}

@Override

void start() {

System.out.println("人工智能啟動");

}

@Override

void stop() {

System.out.println("人工智能汽車成功懸停");

}

@Override

void run() {

System.out.println("人工智能汽車正在全速前進(jìn),車速達(dá)到666km/h");

}

}


```


5、手機有很多接口

耳機接口

SD卡接口

SIM卡接口

電源接口

喇叭接口

編寫實現(xiàn)類手機展示手機接口的功能


```java

package com.qf.day14homework;


import java.util.Scanner;


public class Demo05 {

//聲明全局變量

public static Scanner input = new Scanner(System.in);

public static void main(String[] args) {

/**

* 5、 手機有很多接口

???耳機接口

?SD卡接口

?SIM卡接口

???電源接口

???喇叭接口

???編寫實現(xiàn)類手機展示手機接口的功能

*/

//聲明

//創(chuàng)建手機類的對象

Phone phone = new Phone();

System.out.println("請問你是否開機:【1.是/2.否】(輸入別的無效)");

int number=input.nextInt();

if(number==2) {//不開機就結(jié)束

return;

}else if(number==1) {

phone.swiTch=true;

}

System.out.println("你的手機已經(jīng)開機,您有以下功能可以使用");

out:while(true) {

System.out.println("-------------------------------");

System.out.println("1.耳機接口;2.SD卡接口;3.SIM卡接口;4.電源;5.調(diào)節(jié)音量");

//輸入用戶選項

int num =input.nextInt();

switch(num) {

case 1://選擇1 調(diào)用手機的耳機接口

phone.headset(phone.headset);

break;

case 2://調(diào)用SD卡

phone.sd(phone.sd);

break;

case 3://SIM

phone.SIM(phone.sim);

break;

case 4://電源

phone.powerSupply();

if(phone.swiTch==false) {

System.out.println("關(guān)機成功");

break out;

}else?

break;

case 5://調(diào)節(jié)音量

phone.horn();

break;

default:

System.out.println("您的輸入有誤,請重新輸入。");

break;

}

}

}

}

//耳機接口

interface Headset{

//屬性

static boolean headset=false;

//耳機

void headset(boolean headset);

}

//SD卡接口

interface SD{

//屬性

static boolean sd=false;

//SD

void sd(boolean sd);

}

//SIM接口

interface SIM{

static boolean sim=false;

//SIM

void SIM(boolean sim);

}

//電源接口

interface PowerSupply{

//powerSupply

void powerSupply();

}

//喇叭接口

interface Horn{

//horn

void horn();

}

//手機類

class Phone implements Headset,Horn,PowerSupply,SD,SIM{

//電源屬性

static boolean swiTch = false;

//音量屬性

static int voice=0;

@Override

public void SIM(boolean sim) {

//聲明

Scanner input = new Scanner(System.in);

System.out.println();

System.out.println("你已經(jīng)進(jìn)入SIM卡接口");

if(sim) {

System.out.println("您現(xiàn)在插有SIM卡,是否需要移除【1.是;2.否】(如果輸入其他則直接返回上一個界面)");

int a=input.nextInt();

if(a==1) {

System.out.println("您已經(jīng)移除成功");

sim=false;

}else {//不是1直接返回

System.out.println("好的,返回上個界面");

return;

}

}else {

System.out.println("您現(xiàn)在還未插SIM卡,是否需要插入【1.是;2.否】(如果輸入其他則直接返回上一個界面)");

int a=input.nextInt();

if(a==1) {

System.out.println("您已經(jīng)成功插入SD卡");

sim=true;

}else {//不是1直接返回

System.out.println("好的,返回上個界面");

return;

}

}

}

@Override

public void sd(boolean sd) {

//聲明

Scanner input = new Scanner(System.in);

System.out.println();

System.out.println("你已經(jīng)進(jìn)入SD卡接口");

if(sd) {

System.out.println("您現(xiàn)在插有SD卡,是否需要移除【1.是;2.否】(如果輸入其他則直接返回上一個界面)");

int a=input.nextInt();

if(a==1) {

System.out.println("您已經(jīng)移除成功");

sd=false;

}else {//不是1直接返回

System.out.println("好的,返回上個界面");

return;

}

}else {

System.out.println("您現(xiàn)在還未插SD卡,是否需要插入【1.是;2.否】(如果輸入其他則直接返回上一個界面)");

int a=input.nextInt();

if(a==1) {

System.out.println("您已經(jīng)成功插入SD卡");

sd=true;

}else {//不是1直接返回

System.out.println("好的,返回上個界面");

return;

}

}

}

@Override

public void powerSupply() {

//聲明

Scanner input = new Scanner(System.in);

System.out.println();

if(swiTch==true) {

System.out.println("您現(xiàn)在是開機狀態(tài)是否關(guān)機?【1.是;2.否】(如果輸入其他則直接返回上一個界面)");

int a=input.nextInt();

if(a==1) {

System.out.println("您的手機即將關(guān)機");

swiTch=false;

}else {

System.out.println("返回主界面");

}

}else {

return;

}

}

@Override

public void horn() {

//聲明

Scanner input = new Scanner(System.in);

System.out.println();

System.out.println("您現(xiàn)在的音量為:"+voice+",你可以調(diào)節(jié)音量,你要增大還是減?。骸?.增大;2.減小;最大音量為6】(如果輸入其他則直接返回上一個界面)");

int a =input.nextInt();

if(a==1&&voice<=5) {

voice++;

System.out.println("你現(xiàn)在的音量為:"+voice);

}else if(a==2&&voice>0) {

voice--;

System.out.println("你現(xiàn)在的音量為:"+voice);

}else {

System.out.println("好的,返回主界面");

return;

}

}

@Override

public void headset(boolean headset) {

//聲明

Scanner input = new Scanner(System.in);

System.out.println();

if(headset) {

System.out.println("您已經(jīng)插入耳機");

System.out.println("您是否要拔掉耳機:【1.拔掉耳機;2.不拔】(如果輸入其他則直接返回上一個界面)");

int a =input.nextInt();

if(a==1) {

System.out.println("您已經(jīng)成功拔掉耳機");

headset=false;

}

else {//如果不操作就退出耳機則直接退出

System.out.println("好的退出此界面!");

return;

}

}else {

System.out.println("您現(xiàn)在還沒插入耳機是否要插入耳機:【1.插入耳機;2.算了不用了】(如果輸入其他則直接返回上一個界面)");

int a = input.nextInt();

if(a==1) {

System.out.println("好的您已經(jīng)插入耳機成功");

headset=true;

}else {

System.out.println("好的退出此界面!");

return;

}

}

}

}

```






千鋒教育Java入門全套視頻教程(java核心技術(shù),適合java零基礎(chǔ),Java的評論 (共 條)

分享到微博請遵守國家法律
灌南县| 青阳县| 新建县| 通城县| 通山县| 平邑县| 湾仔区| 云和县| 景宁| 师宗县| 鄢陵县| 蒙山县| 醴陵市| 界首市| 辽阳县| 平和县| 肃南| 西峡县| 丹阳市| 全州县| 尚志市| 山阴县| 万源市| 蓬莱市| 伊通| 沧州市| 德钦县| 杭锦旗| 武胜县| 德令哈市| 闽清县| 黎平县| 霍州市| 县级市| 大宁县| 榆社县| 监利县| 合水县| 大石桥市| 恩施市| 崇义县|