最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java基礎(chǔ)的詳細了解第三天

 更新時間:2021年08月09日 16:48:47   作者:zsr6135  
這篇文章對Java編程語言的基礎(chǔ)知識作了一個較為全面的匯總,在這里給大家分享一下。需要的朋友可以參考,希望能給你帶來幫助

1、private實現(xiàn)封裝處理

如果像想要知道封裝,首先必須清楚如果沒有封裝會怎么樣?

沒有封裝方法中的屬性,在所有方法被調(diào)用后都可以進行無權(quán)限的訪問。而當(dāng)進行了封裝操作之后,在實例化對象訪問該方法的時候會出現(xiàn)無法訪問的問題。

TestDemo1.java:11: 錯誤: name 在 Person 中是 private 訪問控制
                per.name = "張三";
                   ^
TestDemo1.java:12: 錯誤: age 在 Person 中是 private 訪問控制
                per.age = 13;
                   ^
2 個錯誤

解決該問題就需要通過getter、setter進行賦值、取值的操作。

class Person{
	private String name;
	private int age;
	public void setName(String name){
		this.name = name;
	}
	public String getName(){
		return name;
	}
	public void setAge(int age){
		this.age = age;
	}
	public int getAge(){
		return age;
	}
	public void info(){
		System.out.println("name = "+ name +" \nage = " + age);
	}
}
public class TestDemo1{
	public static void main(String args[]){
		Person per = new Person();
		per.setName("張三");
		per.setAge(13);
		per.info();
	}
}

image-20210727174228951

private實現(xiàn)封裝的最大特征在于:只允許本類,而不允許外類訪問

private只是封裝的第一步,如果要學(xué)明白,還需要學(xué)習(xí)多態(tài)、繼承。

2、構(gòu)造方法與匿名對象

構(gòu)造方法就是在使用關(guān)鍵字new實例化新對象的時候進行調(diào)用,但是對于構(gòu)造方法需要遵守以下原則

  • 方法名稱必須與類名稱相同,并且構(gòu)造的方法沒有返回值,每個類中一定至少有一個構(gòu)造方法,如果類中沒有明確的定義任何一個構(gòu)造方法,如果類中沒有定義任何一個構(gòu)造方法,那么將自動生成一個無參的構(gòu)造方法
  • 構(gòu)造方法是在new對象的時候才執(zhí)行

疑問:既然構(gòu)造方法中沒有返回數(shù)據(jù),為什么不使用void囊?

現(xiàn)在類中的組成:屬性、普通方法、構(gòu)造方法

屬性是在對象開辟堆內(nèi)存的時候開辟空間

構(gòu)造方法是在使用關(guān)鍵字new的同時調(diào)用

普通方法是在new實例化對象完成之后進行調(diào)用的

構(gòu)造方法的作用:

  • 構(gòu)造方法的調(diào)用和對象的內(nèi)存分配幾乎是同步完成,所以可以利用構(gòu)造方法設(shè)置類中的屬性內(nèi)容,構(gòu)造帆帆噶可以給類中的屬性進行初始化
  • 通過構(gòu)造方法設(shè)置內(nèi)容,實際上可以避免重復(fù)的setter調(diào)用了
  • setter方法除了具備有設(shè)置內(nèi)容之外,也可以承擔(dān)修改數(shù)據(jù)的操作。
  • 既然構(gòu)造方法本身屬于方法,那么方法就一定可以重載,而構(gòu)造方法的重載更加簡單,因為方法名稱就是類名稱所以能夠做的只是實現(xiàn)參數(shù)的類型和個數(shù)的不同。

在定義若干個構(gòu)造方法的時候按照參數(shù)的個數(shù)采用升序或降序進行排列。

class Person{
	private String name;
	private int age;
	public Person(){}
	public Person(String name){
		name = name;
	}
	public Person(String name, int age){
		name = name;
		age = age;
	}
	public void setName(String name){
		this.name = name;
	}
	public String getName(){
		return name;
	}
	public void setAge(int age){
		this.age = age;
	}
	public int getAge(){
		return age;
	}
	public void info(){
		System.out.println("name = "+ name +" \nage = " + age);
	}
}
public class TestDemo1{
	public static void main(String args[]){
		Person per = new Person("李四",80);
		per.setName("張三");
		per.setAge(13);
		per.info();
	}
}

image-20210727194138758

3、簡單java類

class Emp{
	private int empno;
	private String ename;
	private String job;
	private double sal;
	private double comm;
	public Emp(int no,String name,String j,double s,double c){
		setEmpno(no);
		setEname(name);
		setJob(j);
		setSal(s);
		setComm(c);
	}
	public void setEmpno(int no){
		empno = no;
	}
	public void setEname(String name){
		ename = name;
	}
	public void setJob(String job){
		job = job;
	}
	public void setSal(double s){
		sal = s;
	}
	public void setComm(double c ){
		comm = c;
	}
	public int getEmpnoP(){
		return empno;
	}
	public String getEname(){
		return ename;
	}
	public String getJob(){
		return job;
	}
	public double getSal(){
		return sal;
	}
	public double getComm(){
		return comm;
	}
	public String getInfo(){
		return "empno = " + empno + "\n" +
				"ename = " +ename + "\n" +
				"job = " +job + "\n" +
				"sal = " +sal + "\n" +
				"comm = " +comm ;
	}
}
public class TestDemo2{
	public static void main(String args[]){
		//測試類
        System.out.printf(new Emp(2021,"Joker","CEO",2000.0,0.0).getInfo());
	}
}

4、數(shù)組

數(shù)組屬于引用類型,所以在使用前一定要開辟空間,本身除了聲明并開辟空間之外還有另一種開辟模式,采用我們的分布模式開辟數(shù)組空間。如果使用數(shù)組不開辟空間,會出現(xiàn)NullPointerException異常。

public class TestDemo3{
	public static void main(String args[]){
		//第一種聲明的方式
		int [] num = new int [3];
		//第二種聲明數(shù)組的方式
		int [] num = null;
		num = new int [3];
		num[0] = 0;
		num[1] = 1;
		num[2] = 2;
		for(int i = 0;i < num.length ; i++){
			System.out.println(num[i]);
		}
	}
}

數(shù)組在開發(fā)之中一定會使用,但是像一些講解的時候這么用的數(shù)組少了,在以后實際開發(fā),會更多使用數(shù)組概念,而直接使用數(shù)組99%的情況下只是做for循環(huán)數(shù)組。

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Retrofit+RxJava實現(xiàn)帶進度條的文件下載

    Retrofit+RxJava實現(xiàn)帶進度條的文件下載

    這篇文章主要為大家詳細介紹了Retrofit+RxJava實現(xiàn)帶進度條的文件下載,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • java中File與MultipartFile互轉(zhuǎn)代碼示例

    java中File與MultipartFile互轉(zhuǎn)代碼示例

    在Java開發(fā)中,當(dāng)需要將本地File對象轉(zhuǎn)換為MultipartFile對象以處理文件上傳時,可以通過實現(xiàn)MultipartFile接口或使用CommonsMultipartFile類來實現(xiàn),本文提供了詳細的轉(zhuǎn)換方法和代碼示例,需要的朋友可以參考下
    2024-10-10
  • 解決在for循環(huán)中remove list報錯越界的問題

    解決在for循環(huán)中remove list報錯越界的問題

    這篇文章主要介紹了解決在for循環(huán)中remove list報錯越界的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • SpringBoot?AOP統(tǒng)一處理Web請求日志的示例代碼

    SpringBoot?AOP統(tǒng)一處理Web請求日志的示例代碼

    springboot有很多方法處理日志,例如攔截器,aop切面,service中代碼記錄等,下面這篇文章主要給大家介紹了關(guān)于SpringBoot?AOP統(tǒng)一處理Web請求日志的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • IDEA如何設(shè)置SVN提交忽略文件 target.iml

    IDEA如何設(shè)置SVN提交忽略文件 target.iml

    使用IDEA的SVN插件時,可能會遇到提交不必要文件的問題,解決這個問題有兩種方法:第一種是在IDEA設(shè)置中的File Types下的Ignore files and folders添加需要忽略的文件或文件夾;第二種是使用SVN客戶端TortoiseSVN,在項目目錄點擊右鍵選擇properties
    2024-10-10
  • SpringBoot利用dynamic-datasource-spring-boot-starter解決多數(shù)據(jù)源問題

    SpringBoot利用dynamic-datasource-spring-boot-starter解決多數(shù)據(jù)源問題

    dynamic-datasource-spring-boot-starter 是一個用于在 Spring Boot 項目中實現(xiàn)動態(tài)數(shù)據(jù)源切換的工具,下面我們看看如何使用dynamic-datasource-spring-boot-starter解決多數(shù)據(jù)源問題吧
    2025-03-03
  • java中a=a+1和a+=1的區(qū)別介紹

    java中a=a+1和a+=1的區(qū)別介紹

    這篇文章主要介紹了java中a=a+1和a+=1的區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 使用WebSocket實現(xiàn)即時通訊(一個群聊的聊天室)

    使用WebSocket實現(xiàn)即時通訊(一個群聊的聊天室)

    這篇文章主要為大家詳細介紹了使用WebSocket實現(xiàn)即使通訊,實現(xiàn)一個群聊的聊天室,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Java實現(xiàn)斗地主最簡代碼實例

    Java實現(xiàn)斗地主最簡代碼實例

    在本篇文章里小編給各位分享的是關(guān)于Java實現(xiàn)斗地主最簡代碼實例,有興趣的朋友們可以參考下。
    2020-05-05
  • Java實現(xiàn)Http工具類的封裝操作示例

    Java實現(xiàn)Http工具類的封裝操作示例

    這篇文章主要介紹了Java實現(xiàn)Http工具類的封裝操作,涉及java針對http請求與響應(yīng)、遠程交互與字符串拼接等操作封裝技巧,需要的朋友可以參考下
    2018-01-01

最新評論

杭州市| 泰顺县| 旬阳县| 班戈县| 杭锦旗| 婺源县| 忻城县| 开远市| 措美县| 邢台市| 庆安县| 万宁市| 沧州市| 军事| 肃北| 焉耆| 西青区| 梧州市| 恩施市| 桃源县| 措勤县| 赤水市| 安顺市| 余干县| 南通市| 灵寿县| 甘肃省| 石首市| 克什克腾旗| 穆棱市| 尼勒克县| 密云县| 南涧| 通渭县| 孝感市| 武强县| 湘阴县| 晋中市| 浦北县| 嘉义县| 舞钢市|