JavaSE基础入门

JavaSE入门

Java特性和优势

  1. 简单性
  2. 面向对象
  3. 可以执行
  4. 高性能
  5. 分布式
  6. 动态性
  7. 多线程
  8. 安全性
  9. 健壮性
  10. Write once,run anywhere.

Java三大版本

  • JavaSE : 标准版
  • JavME : 微型版—快死了
  • JavaEE : 企业版—最广泛

JDK & JRE & JVM

JDK

Java开发工具包

JDK>JRE>JVM

JRE

Java运行时环境

JRE>JVM

JVM

Java虚拟机

跨平台核心

编译和运行

编译 : javac Test.java

运行 : java Test

Java程序运行机制

Java属于编译解释型

编译程序 : 生成可执行文件 , 多用 ----C , C++

解释程序 : 从上至下逐句翻译 , 没有源文件生成 , 少用

Java先编译成 class 文件 , 然后执行class文件

Java基础语法

注释

写注释是一个很好的习惯 , 注释会被编译器忽略 , 并不会被执行

三种注释
  1. 单行注释

    // …

  2. 多行注释

    /* … */

  3. 文档注释

    /** … */

标识符

  • 关键字 : public , class , static , void…

String不是关键字,是类

**注意事项 : **

  1. 标识符以字母,美元符号,下划线开头
  2. 首字母后可以是任何数字,美元符号,下划线,字母的组合
  3. 标识符不能是关键字
  4. 标识符大小写是敏感的
  5. 可以以中文命名,但是不建议

Java数据类型

Java是强类型语言,所有变量都必须定义后才能使用

Java的数据类型分为两大类

  • 基本数据类型
数值非数值
整型–byte:1Bboolean类型
short:2B只有true和false两个值
int:4B–最常用占一位
long:8B–L
浮点数–float:4B–F
double:8B
字符–char:2B⭐–单个字符
long n1=123_456_789L;
float n2=1.23F;
  • 引用数据类型

    1. 数组
    2. 接口

数据类型扩展

整数扩展
1. 二进制--0B

2. 八进制--0

3. 十进制

4. 十六进制--0X
int i=10;
int i2=010;   //八进制
int i3=0X10;
int i4=0B1010101;

浮点数扩展

浮点数都是近似的,最好并避免浮点数比较

float f=0.1f;
double d=1/10.0;
System.out.println(f==d);  //false
字符拓展
char c='a';
char c2='汤';
char c3='姆';
System.out.println((int)c);  //97
System.out.println((int)c2);  //27748
System.out.println((int)c3);	//22982

空格 : 32 , 0 : 48 , A : 65 , a : 97

所有的字符本质还是数字

Java使用Unicode

范围 : \u0000—\uFFFF

字符串扩展
String s1=new String("Hello");
String s2=new String("Hello");
String s3="Hello";
String s4="Hello";

System.out.println(s1==s2);  //false
System.out.println(s3==s4);  //true
布尔扩展
if(flag){}
if(flag==true){}

​ 两者是等价的语法,但推荐使用第一种

类型转换

Java是强类型语言 , 所以有时候要进行类型转换

byte,short,char—>int—>long—>float—>double

  1. 不能对布尔值进行转换
  2. 转换的时候可能会存在精度问题或内存溢出
自动类型转换

低—>高

double d=0.5f;
float f=1000000000L;
int i='a';
强制类型转换
//(类型)变量名
System.out.println((int)45.999);  //45
int a=128;
System.out.println((byte)a);    //内存溢出

变量,常量,作用域

变量

数据类型 变量名=值

保证程序可读性

常量

程序中不允许改变的值,一般都为大写

    //修饰符不存在先后顺序    static final double PI=3.14;
变量作用域
  • 类变量
  • 实例变量
  • 局部变量
    //类变量 : static,不能放方法中    static double wage=500;    //实例变量 : 从属于对象    String name;    //不初始化,会带一个默认值    int age;    // 0  0.0  \u0000  false  null    public static void main(String[] args) {        //局部变量 : 必须声明和初始化        int i=10;        System.out.println(i);        System.out.println(wage);    }
命名规范

所有取的名字 : 见名知意

  • 类成员变量 : 除了第一个单词外,后面的单词首字母大写 monthSalary , 驼峰原则
  • 局部变量 : 首字母小写 , 驼峰原则
  • 常量 : 大写字母和下划线 : MAX_VALUE
  • 类名 : 首字母大写和驼峰规则 GoodMan , Student
  • 方法名 : 首字母小写和驼峰规则 run() , runMan()

运算符

算术运算符⭐

+,-,*,/,%(模),++,–

IDEA : 快捷键 ctrl+d复制当前的行

        //1        int a=10;        int b=20;        System.out.println((double)a/b); //整数相除        //2        short c=10;        byte d=8;        long l=10101L;        double x=1.0D;        System.out.println(c+d); //int        System.out.println(a+b+c+l); //long        System.out.println(x+l);  //double        //3        System.out.println(a%b); //===>10/20=0....10        System.out.println(-1%10); //-1 , 只有除数为负数时结果才为负数        System.out.println(1%-10); //1

++和-- ,单独使用都一样

赋值运算符⭐

=

关系运算符⭐

<,>,==,<=,>=,!=,instanceof

返回结果 : true或false

逻辑运算符⭐

短路–&&,||,!

位运算符

&,|,^,~,>>,<<,>>>

        /*        * A=0011 1100        * B=0000 1101        * */        //A&B   有0出0        //A|B   有1出1        //A^B   异或:相同为0,不同为1        //~B    取反        /*        效率极高        << 左移   *2        >> 右移   /2        */        System.out.println(2<<3);//2* 2*2*2        System.out.println(2<<1);//2* 2        System.out.println(2<<2);//2* 2*2        System.out.println(2>>1);//2/ 2        System.out.println(16>>2);//16/2/2
条件运算符

? :

偷懒用

扩展赋值运算符

+=,-=,*=,/=,%=

扩展

        int a=10;        int b=20;        System.out.println(a+b+"");//30        System.out.println(""+a+b);//1020

优先级

数学

多用括号() , 养成习惯

包机制

包的本质就是文件夹

package必须在最上面

规范 : 包名一般用公司域名倒置

com.baidu.www

JavaDoc

javadoc是用来生成自己API文档的

参数 :

  • @author作者名
  • @version版本号
  • @since指明需要最早使用的jdk版本
  • @param参数名
  • @return返回值情况
  • @throws异常抛出情况
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值