Java基础知识点(一)

一、JDK、JRE和JVM的关系

JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE、Java工具和Java基础类库。Java Runtime Environment(JRE)是运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。JVM是Java Virtual Machine(Java虚拟机)的缩写,是整个java实现跨平台的最核心的部分,能够运行以Java语言写作的软件程序。


二、Hello World案例的编译和运行

public class HelloWorld {
    /* 第一个Java程序
     * 它将输出字符串 Hello World
     */
    public static void main(String[] args) {
        System.out.println("Hello World"); // 输出 Hello World
    }
}
javac HelloWorld.java
java HelloWorld

三、关键字

类别 关键字 说明
访问控制
private 私有的
protected 受保护的
public 公共的
default 默认
类、方法和变量修饰符
abstract 声明抽象
class
extends 扩充,继承
final 最终值,不可改变的
implements 实现(接口)
interface 接口
native 本地,原生方法(非 Java 实现)
new 新,创建
static 静态
strictfp 严格,精准
synchronized 线程,同步
transient 短暂
volatile 易失
程序控制语句
break 跳出循环
case 定义一个值以供 switch 选择
continue 继续
default 默认
do 运行
else 否则
for 循环
if 如果
instanceof 实例
return 返回
switch 根据值选择执行
while 循环
错误处理
assert 断言表达式是否为真
catch 捕捉异常
finally 有没有异常都执行
throw 抛出一个异常对象
throws 声明一个异常可能被抛出
try 捕获异常
包相关
import 引入
package
基本类型
boolean 布尔型
byte 字节型
char 字符型
double 双精度浮点
float 单精度浮点
int 整型
long 长整型
short 短整型
变量引用
super 父类,超类
this 本类
void 无返回值
保留关键字
goto 是关键字,但不能使用
const 是关键字,但不能使用
null

四、Java标识符

标识符就是用于给 Java 程序中变量、类、方法等命名的符号。
使用标识符时,需要遵守几条规则:

  1. 标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符,不能以数字开头。譬如:123name 就是不合法滴
  1. 标识符不能是 Java 关键字和保留字( Java 预留的关键字,以后的升级版本中有可能作为关键字),但可以包含关键字和保留字。如:不可以使用 void 作为标识符,但是 Myvoid 可以
  1. 标识符是严格区分大小写的。 所以,一定要分清楚 mixiaomi 和 MIxiaomi 是两个不同的标识符哦!
  1. 标识符的命名最好能反映出其作用,做到见名知意。

五、常量分类

常量类型 说明 举例
字符串常量 用双引号括起来的内容 “HelloWorld”
整数常量 不带小数的数字 666,-88
小数常量 带小数的数字 13.14,-5.21
字符常量 用单引号括起来的内容 ‘A’,‘0’,‘我’
布尔常量 布尔值,表示真假 只有两个值:true,false
空常量 一个特殊的值,空值 值是:null
public class ConstantDemo {
    public static void main(String[] args){
        //字符串常量
        System.out.println("HelloWorld");
        System.out.println("----------");
        //整数常量
        System.out.println(666);
        System.out.println(-88);
        System.out.println("----------");
        //小数常量
        System.out.println(13.14);
        System.out.println(-5.21);
        System.out.println("----------");
        //字符常量
        System.out.println('A');
        System.out.println('0');
        System.out.println('我');
        System.out.println("----------");
        //布尔常量
        System.out.println(true);
        System.out.println(false);
        System.out.println("----------");
        //空常量
        //空常量是不能直接输出的
       // System.out.println(null);
    }
}

六、数据类型

Java 语言是一种强类型语言。通俗点说就是,在 Java 中存储的数据都是有类型的,而且必须在编译时就确定其类型。

在 Java 的领域里,基本数据类型变量存的是数据本身,而引用类型变量存的是保存数据的空间地址。


关于 float 型和 double 型的区别

  • 1.float是单精度浮点数,内存分配4个字节,占32位,有效小数位6-7位
    double是双精度浮点数,内存分配8个字节,占64位,有效小数位15位

  • 2.java中默认声明的小数是double类型的,如double d=4.0。如果声明: float x = 4.0则会报错,需要如下写法:float x = 4.0f或者float x = (float)4.0其中4.0f后面的f只是为了区别double,并不代表任何数字上的意义

  • 3.对编程人员而言,double 和 float 的区别是double精度高,但double消耗内存是float的两倍,且double的运算速度较float稍慢。

char 型和 String 型的不同

  • 1.char表示字符,定义时用单引号,只能存储一个字符,如char c='x';而String表示字符串,定义时用双引号,可以存储一个或多个字符,如String name="tom";

  • 2.char是基本数据类型,而String 是一个类,具有面向对象的特征,可以调用方法,如name.length()获取字符串的长度。

数据类型 关键字 内存占用 取值范围
整数 byte 1 -128~127
short 2 -32768~72767
int 4 -2的31次方到2的31次方-1
long 8 -2的63次方到2的63次方-1
浮点数 float 4 负数:-3.402823E+38到-1.401298E-45 正数:1.401298E-45到3.402823E+38
double 8 负数:-1.797693E+308到-4.9000000E-324 正数:4.9000000E-324到1.797693E+308
字符 char 2 0-65535
布尔 boolean 1 true,false

说明:E+38表示是乘以10的38次方,同样,E-45表示乘以10的负45次方

七、类型转换

把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量

public class ConversionDemo {
    public static void main(String[] args) {
        //自动类型转换
        double d = 10;
        System.out.println(d);
        //定义byte类型的变量
        byte b = 10;
        System.out.println(d);
        short s = b;
        System.out.println(s);
        int i = b;
        System.out.println(i);
        long e =b;
        System.out.println(e);
        float y = b;
        System.out.println(y);
        double o = b;
        System.out.println(o);
        //这个是不可以的,类型不兼容
        //char c = b;

        //强制类型转换
        int k = (int)88.88;
        System.out.println(k);
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,511评论 1 330
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,495评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,595评论 0 225
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,558评论 0 190
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,715评论 3 270
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,672评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,112评论 2 291
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,837评论 0 181
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,417评论 0 228
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,928评论 2 232
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,316评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,773评论 2 234
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,253评论 3 220
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,827评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,440评论 0 180
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,523评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,583评论 2 249

推荐阅读更多精彩内容