JAVA基础知识补充

java基础知识

作用域

  • 类变量

  • 实类变量

  • 局部变量

public class Demo5 {
    //属性:变量
    //类变量:又称为静态变量 static修饰
    static String num ;
​
    //实类变量:从属于这个类,
    /**
     * 
     如果没有赋值,进行初始化
         * 1、基本数据类型:
         *      整数类型都是默认为0
         *      浮点数默认为0.0
         *      布尔类型默认为false
         * 2、引用类型默认都是null;
     */
    String name;
    int age;
    boolean flag;
​
    //main方法 函数的入口
    public static void main(String[] args) {
        //局部变量:必须要声明和初始化值
        int i =10;
        System.out.println(i);  //10
​
        //实类变量:需要先创建类实例,然后利用类实例化创建实类变量
        Demo5 demo5 = new Demo5();
        System.out.println(demo5.name);  // null
        System.out.println(demo5.age);   // 0
        System.out.println(demo5.flag);  //false
        //类变量:不需要
        System.out.println(num);   //null
​
    }
    //其他方法
    public void get(){
​
    }
}
​

命名规则:

  • 所有类、方法、变量:见名知意并遵守驼峰原则

  • 类名、接口名: 首字母大写和驼峰原则 Object、Demo、Man

  • 类成员变量名:首字母小写和驼峰原则 myName、myStudy

  • 局部变量名:首字母小写和驼峰原则

  • 常量名:都是大写和驼峰原则 且中间_分割 MAX_NUMBER

  • 方法名:首字母小写和驼峰原则 allName() run()

 

运算符

优先级可以使用()使用

```java

算术运算符:+ 、- 、*、/、% 、++ 、--

赋值运算符:=

关系运算符:> ,<,==,>=,<= ,!=instanceof

逻辑运算符:&&,||,!

位运算符:&,^,|,~, >>,<<,>>>(了解)

条件运算符:? :

扩展赋值运算符+=, -=,*=,/=

```

 

逻辑运算符

(重点:短路与、短路或)

短路与 :如果前面是false,后面直接断开不再执行

短路或 :如果前面为true,后面直接断开不再执行

package operator;
//逻辑运算符
public class Demo2 {
    public static void main(String[] args) {
        //逻辑运算符  与(and)&&     或(or)||      非(取反)!
        boolean a = true;
        boolean b = false;
        System.out.println("a&&b:"+(a&&b));   //false
        System.out.println("a||b:"+(a||b));   //true
        System.out.println("!(a&&b):"+!(a&&b));  //true
​
        //短路运算
        int c = 10;
        boolean d = (10<8)&&(c++<8);
        //短路与  :如果前面是false,后面直接断开不再执行
        System.out.println(c);
        System.out.println(d);
        System.out.println("++++++++++++++++++++++++++++++++++++++++++++");
        //短路或  :如果前面为true,后面直接断开不再执行
        boolean flag =(10>8)||(c++>8);
        System.out.println(flag);
        System.out.println(c);
​
    }
}

一元运算符

(自增自减重点)

++ 、--

​
//一元运算符 
public class Demo4 {
    public static void main(String[] args) {
        //一元运算符  ++ 自增  --自减
        int a = 2;
        int b = a++;    //先赋值后自增
        int c = ++a;    //先自增后赋值
        System.out.println(a);   //4
        System.out.println(b);   //2
        System.out.println(c);   //4
//        幂运算符 2^3   2*2*2
        int pow =  (int)Math.pow(2,3);
        System.out.println(pow);
        //math中开平方
        double sqrt = Math.sqrt(144);  //开平方
        System.out.println(sqrt);
    }
}

二元运算符

package operator;
//二元运算符 + 、- 、*、/、%  
public class Demo1 {
    public static void main(String[] args) {
        // 复制当前行到下一行,ctrl+D键
        int a = 4;
        int b = 5;
        System.out.println(a+b);   //9
        System.out.println(a*b);   //20
        System.out.println(a-b);   //-1
        System.out.println(a/b);   // 0  为啥等于0
        //因为基本操作时候将数字自动转换为int类型
        System.out.println("==========================================");
//        应该将其强制转换为double型
        System.out.println(a/(double)b);   // 0.8  为啥等于0
    }
}

三元运算符(重点)

x ? y:z

如果x==true,则结果是y,否则结果是z

package operator;
//三元运算符,又称条件运算符
public class Demo7 {
    public static void main(String[] args) {
        // x ? y:z
        // 如果x==true,则结果是y,否则结果是z
       
        String name = "TraceChen";
        String result1 = name.equals("TraceChen") ? "是本人":"不是本人";  //非常最要 必须要掌握
        String result2 = name.equals("ZhangSan") ? "是本人":"不是本人";  //非常最要 必须要掌握
        System.out.println(result1);
        System.out.println(result2);
​
        int age1 = 30;
        int age2 = 31;
        System.out.println(age1==age2?"年龄相等":"年龄不相等");
​
    }
}
​
​

位运算

(左移右移重点)

最重要左移右移 (运算效率极高)

public class Demo5 {
    public static void main(String[] args) {
//          位运算符:&,^,|,~, >>,<<,>>>(了解)
        /**
         * & 与运算
         * ^ 异或运算
         * | 非运算
         * ~  取反运算
         * ---------------------------------
         * 非常重要的点
         * 2*8 = 16   运算最快的方式 左移
         * 16/2       运算最快的方式 右移
         * << 左移     *2
         * >> 右移     /2
         * >>>
         * A  0011 0110
         * B  1010 0110
         *
         *A&B=0010 0110   都为真则为真
         *A^B=1001 0000    不相同为真
         *A|B=1011 0110
         * ~B=0101 1001
         **/
​
// 0000 0001   1
// 0000 0010   2
// 0000 0100   4
// 0000 1000   8
// 0001 0000   16
// 0010 0000   32
// 0100 0000   64
​
//        最重要(效率极高)
        System.out.println(10<<10);    //左移n位 相当于*2^n
        System.out.println(1000>>3);    //右移n位 相当于/2^n
​
​
    }
}

 

字符串 +

(前后字符串重点)

public class Demo6 {
    public static void main(String[] args) {
        //字符串连接  +
        int a = 100;
        int b = 200;
        //两个数相加 前后有字符串表示什么意思?
        System.out.println("String"+a+b); //字符串在前,后面连接成字符串
        System.out.println(a+b+"String"); //字符串在后,前面相加连接字符串
    }
}

包机制

包机制最重要的一句话:

域名倒着写:比如:www.cbb.com  包命名写成com.cbb.www

 

参考:疯狂说  https://www.bilibili.com/video/BV12J41137hu?from=search&seid=2278767050332516310

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值