Java,我相信如果去查维基百科,「物件导向」这4个字一定会在叙述的第一行。
换言之,在Java的世界中,几乎所有的东西都以「物件」这个概念来运作,不过既然用到几乎这两个字,就肯定有例外啦。
那就是八大基本型别(Primitive Type):
型别就好像是容器,这些容器有大有小,也有各种形状材质,当我们要宣告一个变数来装东西的时候,Java就是比较龟毛一点,要写的人先规定这个变数之後要装的东西是什麽种类,宣告後这个变数就只能装进同一种的东西了。这种语言风格被称为强型别。
再来说说我在後面写的"xxbyte"是什麽意思,这就是容器大小的意思了,在程序的世界中,我们所用的大小单位叫做位元组(byte),下面放张图来解释一下位元组是什麽概念:
所以byte型别的总容量就是2 ^ 8 = 256,然後又有正负数之分,所以byte型别可以装进去的整数范围是-128 ~ 127;而int型别的总容量就是2 ^ 32 = 4,294,967,296,正负切分後范围是-2,147,483,648 ~ 2,147,483,647,所以若在程序中这样指派:
int num = 2147483648;
那就会发生编译错误,错误讯息为「The literal 2147483648 of type int is out of range」。
好的,差不多仁至义尽了,总之以上这些型别在Java中可以不使用物件的型态来装进变数:
int integer = 10;
double floatNumber = 10.1;
boolean flag = true;
char word = 'A';
所以就只有这8种基本型别的变数可以直接装进字面常量(literal constant)。需要注意的是:
String sentence = "Hello Vegetable Chicken. Just kidding~";
虽然字串看似也是直接指派了字面常量给变数,但实际上字串不是基本型别而是类别型别!这个特例需要死记一下(看来字串也可以独立写一篇,赞赞)。还记得当初要找第一份软件工程师工作时,面试被问了不少次呢。
那今天就到这边罗,大家掰掰
哎基本型别原本其实也就这些东西而已,但是因为我的目的是要考证照,必须再多说一些。
在一开始有提到型别就像是一个容器的种类,有大小之分,那如果我们把很大的东西要装进很小的容器时,会发生什麽事情?
byte num = 128;
如果你是用eclipse之类的IDE,这时候在"128"的底下就会出现红底线,并告诉你:「Type mismatch: cannot convert from int to byte」
WTF? 什麽int? 我懂我故意要放一个会让byte型别爆掉的128(为什麽128会爆掉?想想看),但我没有要放int呀?
嘿嘿......突然发现要讲下去又要扯出一拖拉库了,我想今天就先这样吧!太好了明天有题目可以写了哈哈哈~
<<: [Day 0] Reactive Programming 资料来源
>>: 【Side Project】 做Side Project前的准备
灌了政府两字,果然威能,请小心服用... 适用人员: 技术人员。 适用法规: 资通安全责任等级分级办...
Hi 又过了一周 这周也是满一个月的时候 很多人都会好奇在里面会做什麽事 在这一个月内里面 除了上...
shutdown 用来关机的指令,这个指令只有 root 才有权力下! [root@tsai roo...
MVC模式(Model–view–controller) 是软件工程中的一种软件架构模式, 把软件...
前面我们有了导览列加上banner区块!接下来的排版就可以很快速地套用我们之前所学,display:...