本文目錄一覽:
java中什麼是類和對象
類就是具備某些共同特徵的實體的集合,它是一種抽象的數據類型,它是對所具有相同特徵實體的抽象。在面向對象的程序設計語言中,類是對一類“事物”的屬性與行為的抽象。舉一個例子說明下類,比如Person(人)就是一個類,那麼具體的某個人“張三”就是“人類”這個類的對象,而“姓名、身高、體重”等信息就是對象的屬性,人的動作比如“吃飯、穿衣”等就是對象的方法。總之類就是有相同特徵的事物的集合,而對象就是類的一個具體實例。同時類有多態和繼承,例如“人類”可以分為“男人、女人”,“老人、小孩”那麼“男人、女人”就是“人類”的子類等等。
Java語言中對類Person的定義往往如下:
public class Person {
private String name; //屬性:姓名
private int height; //屬性:身高
private int weight; //屬性:體重
public Person() {}
public Person(String name, int height, int weight) {
this.name = name;
this.height = height;
this.weight = weight;
}
//… some methods…
public void doSth() { //行為:
//… do something
}}
Java中的類
類可以看成是創建Java對象的模板。
通過下面一個簡單的類來理解下Java中類的定義:
public class Dog{
String breed; int age; String color; void barking(){
}
void hungry(){
}
void sleeping(){
}}
一個類可以包含以下類型變量:
局部變量:在方法、構造方法或者語句塊中定義的變量被稱為局部變量。變量聲明和初始化都是在方法中,方法結束後,變量就會自動銷毀。
成員變量:成員變量是定義在類中,方法體之外的變量。這種變量在創建對象的時候實例化。成員變量可以被類中方法、構造方法和特定類的語句塊訪問。
類變量:類變量也聲明在類中,方法體之外,但必須聲明為static類型。
一個類可以擁有多個方法,在上面的例子中:barking()、hungry()和sleeping()都是Dog類的方法。
關於Java的對象類型數組和List
1.不一定都相同
2.可以包含String和Integer
3.List中元素不用統一類型。(其實也統一成為Object了)
因為所有類默認都是繼承了Object,上面所說的元素只要是Object就行,所以Object[]和List中元素什麼對象都行。。
java中的對象類型與基本數據類型的區別?
基本數據類型在棧中進行分配,而對象類型在堆中進行分配。
所有方法的參數都是在傳遞引用而非本身的值(基本類型例外)。
對象之間的賦值只是傳遞引用,基本類型之間的賦值是創建新的拷貝。
例如:
String
a
=
“china”;
String
b
=a;
則a、b都指向常量池的”china”。
String
a
=
new
String(“china”);
String
b
=a;
則a、b都指向堆中的”china”。
String
a
=
new
String(“china”);
String
b
=a;
a
=
a.substring(0,1);
則b指向棧中的”china”,a指向新的對象”c”。
對於基本類型,“==”和“!=”是在比較值。而對於對象來說,“==”和“!=”是在比較兩個引用是否相同。
使用equals()方法有一點需要注意:equals()方法的默認行為是比較引用。如果是你自己寫的類,你應該為它重寫equals()來比較對象的內容。大多數Java類庫都實現了比較對象內容的equals()方法。
字符串操作符的特性:如果表達式以一個字符串起頭,那麼後面的操作數都會被自動轉換為字符串型。所以有時候看到一個空的String後面+一個基本類型變量,這是一種簡單執行字符串轉換的方式。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/183647.html