Java第二天2020.3.18

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)

捕獲.PNG

編程實(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)造方法的第一句

今日播放列表
捕獲.PNG
今日小結(jié):

用了大概兩個(gè)半小時(shí),播放不能調(diào)倍速真的是太難受了,看視頻有點(diǎn)煎熬,容易走神。不過(guò)老師講的還是蠻好的,內(nèi)存挺重要的,不過(guò)感覺(jué)Java比C語(yǔ)言簡(jiǎn)化了很多,但我理解不了我一個(gè)很可愛的老師一直鄙視Java,他說(shuō)學(xué)Java的都是凡人,c++才是最好的語(yǔ)言哈哈哈哈哈

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容