1.內(nèi)存分配
(主方法棧內(nèi)存,調(diào)用的是堆內(nèi)存)
2 構(gòu)造方法
1.無(wú)返回值
2.類方法
3.系統(tǒng)可以默認(rèn)構(gòu)造
3.方法的重載
同一個(gè)方法名,不同的形參類型
編程實(shí)現(xiàn)一:
在類A中重載加法add方法,要求:在main方法中創(chuàng)建類A的對(duì)象a,并調(diào)用add方法分別實(shí)現(xiàn)兩個(gè)整數(shù)求和、三個(gè)整數(shù)求和、兩個(gè)double類型數(shù)據(jù)求和(數(shù)據(jù)不需要用戶通過(guò)鍵盤輸入,直接在程序中指定即可),并輸出上述三種計(jì)算
class point {
int add(int x,int y,int z)
{
return x+y+z;
}
int add(int _x,int _y)
{
return _x+_y;
}
double add(double _x,double _y)
{
return _x+_y;
} //point類里含有方法
public static void main(String[] args)
{
point a=new point();
System.out.println(a.add(1,1,1));//Java自動(dòng)根據(jù)參數(shù)類型匹配
System.out.println(a.add(1.0,1.0));
System.out.println(a.add(1,1));
}
}
編程實(shí)現(xiàn)二:
編程實(shí)現(xiàn)一個(gè)二維平面上點(diǎn)的類Point,包括下述內(nèi)容:
(1)一個(gè)表示x坐標(biāo)的double類型的數(shù)據(jù)域;
(2)一個(gè)表示y坐標(biāo)的double類型的數(shù)據(jù)域;
(3)一個(gè)無(wú)參的構(gòu)造方法;
(4)一個(gè)為x、y坐標(biāo)設(shè)置初始值的有參的構(gòu)造方法;
(5)一個(gè)返回當(dāng)前點(diǎn)到原點(diǎn)距離的方法getDistanceToBase。
要求:利用上述Point類創(chuàng)建兩個(gè)對(duì)象p1和p2,p1的坐標(biāo)直接隨便指定為2個(gè)固定值,p2的坐標(biāo)由用戶通過(guò)鍵盤輸入。輸出p1和p2距離原點(diǎn)的距離。
提示:使用下面的代碼計(jì)算(x,y)距離(0,0)的距離
Math.sqrt(xx + yy)
編程實(shí)現(xiàn)三:
求長(zhǎng)方體寬和高
/*(1)兩個(gè)名為width和height的double型數(shù)據(jù)域,它們分別表示矩形的寬和高。width和height的默認(rèn)值都為1。
(2)創(chuàng)建默認(rèn)矩形的無(wú)參構(gòu)造方法。
(3)一個(gè)創(chuàng)建width和height為指定值的矩形的構(gòu)造方法。
(4)一個(gè)名為getArea()的方法返回這個(gè)矩形的面積。
(5)一個(gè)名為getPerimeter()的方法返回周長(zhǎng)。
要求:定義一個(gè)Rectangle類的對(duì)象,其長(zhǎng)和寬由用戶通過(guò)鍵盤輸入,輸出該對(duì)象的長(zhǎng)、寬、面積和周長(zhǎng)。*/
import java.util.Scanner;
public class Rectangle {
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
MyRectangle d1=new MyRectangle(2,2);
d1.width=input.nextDouble();
d1.height=input.nextDouble();
System.out.println("The area is "+d1.getArea());
System.out.println("The Perimeter is "+d1.getPerimeter());
}
}
class MyRectangle{
double width=1,height=1;
MyRectangle(){}
MyRectangle(double a,double b)
{
width=a;
height=b;
}
double getArea()
{
return (width*height);
}
double getPerimeter()
{
return (2*(width+height));
}
}
注意命名格式
1.類名首字母大寫
2.方法名,屬性名駝峰命名法
3.見名知意
this 關(guān)鍵字
就是指的當(dāng)前這個(gè)它所在的對(duì)象,
this只能在方法內(nèi)部使用
this不能用于靜態(tài)方法。main方法也是靜態(tài)的,所以this也不能用于main方法。
可以使用this關(guān)鍵字調(diào)用重載構(gòu)造方法。避免相同的初始化代碼,只能在構(gòu)造方法中用,并且必須位于構(gòu)造方法的第一句
今日播放列表
今日小結(jié):
用了大概兩個(gè)半小時(shí),播放不能調(diào)倍速真的是太難受了,看視頻有點(diǎn)煎熬,容易走神。不過(guò)老師講的還是蠻好的,內(nèi)存挺重要的,不過(guò)感覺(jué)Java比C語(yǔ)言簡(jiǎn)化了很多,但我理解不了我一個(gè)很可愛的老師一直鄙視Java,他說(shuō)學(xué)Java的都是凡人,c++才是最好的語(yǔ)言哈哈哈哈哈