DAY9-JAVA的类别(3)-多载

多载
利用JAVA中的多载,就不需要这麽多的函数来做相同的工作!
那多载到底是什麽呢?其实就是指相同的函数名称,可根据其引数的个数或是引数的型态不同,来设计不同功能。

多载常犯错误
使用多载时,编译器会根据引数的个数与型态,来呼叫相对应的函数,因此每一个多载函数的引数个数或引数型态必须不同。

但是多载也允许函数的引数个数和型态不同,且回传型态也不相同。

void area(int height ,double width);
int area(double width);

公有成员
可以在类别外部做修改,但是却隐藏着危险!

class Test{
    int height = 10;
    int width = 20;
    
    void area(){
        System.out.println("area = "+height*width);
    }
}

public class IT_Test{
    public static void main(String args[]){
        Test lala = new Test();
        lala.height = 30;   //在类别外可以直接更改成员资料
        lala.area();
    }
}

私有成员
如果没有一个机制来限定类别中资料成员的存取,很可能会造成错误输入。所以我们就可以透过私有成员(private member)来设定。

class Test{
    private int height = 10;
    private int width = 20;
    ...
}

如果在field宣告的前面加上private,则无法从类别(Test)以外的地方设定或读取,因此可以达到保护资料的目的。

class Test{
    private int height = 10;
    private int width = 20;
    
    void area(){
        System.out.println("area = "+height*width);
    }
}

public class IT_Test{
    public static void main(String args[]){
        Test lala = new Test();
        lala.height = 30;    //在类别外不可以直接更改成员资料
        lala.area();
    }
}

上面的程序就会跳出错误的结果!

省略public与private
public与private适用来设定公有与私有成员的"修饰子"(modifier),修饰子是可以省略不写的!如果类别的成员之前被省略public与private的话,表示这个成员只能在同一个package里被存取;如果被冠上public的话,成员可以被任何一个package所存取。

菜鸟工程师的体脂肪

菜鸟工程师也有分享食记,欢迎大家追踪喔~~
https://instagram.com/engineer_bodyfat?utm_medium=copy_link

早上打完疫苗,趁现在还没有什麽感觉赶快来写文><
See you tomorrow~~


<<:  Day 1: 所以到底什麽是Nativescript

>>:  【PHP Telegram Bot】Day02 - Telegram 聊天机器人原理

【Day 9】设置虚拟主机 EC2 x 吴念真的土豆神器

tags: 铁人赛 AWS EC2 闲话家常 历久不衰的虚拟机器 开赛以来发现大家都用很新很潮的技术...

[第二十天]从0开始的UnityAR手机游戏开发-介绍Animator02

本次将延续前一章节的教学 点选Cube Animation往CubeAttack Animation...

Day 28: Kubernetes 原理

Kubernetes是一个知名的分散式管理、编排Container工具,帮助你将不同的dockeri...

Day 04 : 以资料为中心的人工智慧 Data - Centric AI

垃圾进垃圾出「 Garbage in, garbage out 」,不去检视垃圾有多垃圾的情况下,...

[Day2] 论前端框架的好处及重要性~从自己刻到学习共通语言(上篇)

前言 昨天的文章有提到, 有个前辈推坑我学 Next.js, 但由於 Next.js 是以 Reac...