Java基础-一些容易被人忽视却重要的Java基础知识

  • 时间:
  • 浏览:
  • 来源:互联网

文章目录

  • 前言
  • 一、关于基本数据类型的基础知识
    • 1.默认值以及强制类型转换
    • 2.浮点数
  • 二、关于构造方法的基础知识
  • 三、关于静态方法的基础知识
  • 四、关于访问权限的基础知识
    • 1.类成员
    • 2.类
  • 五、关于成员变量以及局部变量的基础知识
    • 1.成员变量
    • 2.局部变量


前言

此篇博客整理一些Java的基础知识,虽然很基础但却非常重要,也容易出现错误。


一、关于基本数据类型的基础知识

1.默认值以及强制类型转换

关于基本数据类型以及默认数值如下表所示:
在这里插入图片描述
注意:
(1)char的类型占两个字节,但取值为0~65535;
(2)boolean的初始值为false,不是true
(3)范围高的数据类型赋值给低范围的基本数据类型需要强制类型转换,例如long型的数据赋值给int型的数据需要强制类型转换。因为long占8个字节比int的4个字节所表示的范围要大得多,需要强制类型转换,牺牲位数;
(4)不能简单的认为占的字节数高的赋值字节数低的都要进行强制类型转换。例如long赋值给float却不需要强制类型转换。float占4个字节即32位,根据IEEE-754关于浮点数的标准,最高位为符号位S,接着剩下8位指数位E,剩下的32位为尾数M,故V=(-1)^S * M* 2^E。浮点数在内存中的32位并不是简单的转换为十进制,而是通过公式计算而来。虽然float占4个字节但浮点数的最大值要比long的范围要大。

2.浮点数

Java中声明一个float型的变量有以下几种:

float num = 1.5f;
float num = 1.5F;

声明一个doublet型的变量有以下几种:

double num = 1.5d;
double num = 1.5D;
double num = 1.5;

没有特别指出后缀则为double型,float num=1.5是不正确的声明方式,需要加上f或者强制类型转换float num=(float)1.5

二、关于构造方法的基础知识

  1. Java类中至少要有一个构造方法,如果没有实现构造方法才会提供一个默认的构造方法,默认的构造方法会自动给成员变量赋初值(类对象初始化为null)
  2. 构造方法不能被继承、重写
  3. 构造方法不能被static、final、synchronized、abstract、native修饰,可被public、private、protected修饰
  4. 除了用new关键字调用构造方法外,可以在类内部使用this.构造方法()
    ,可以在子类中通过super.父类构造方法()调用,也可以使用反射机制

三、关于静态方法的基础知识

静态方法也称为类方法。被static修饰的方法称为静态方法,访问静态方法直接类名.静态方法名即可。
注意:
静态方法可以访问静态成员变量,不可以访问实例成员变量;
实例方法可以访问静态成员变量也可以访问实例成员变量。

四、关于访问权限的基础知识

1.类成员

类成员的访问权限有4种:public、protected、default、private。

  1. public :所有类中都可被访问
  2. protected:在声明protected变量的类中访问或该类的子类或其他包的子类访问
  3. default:可省略,只能在声明的类中或同一包中的类访问
  4. private:限制在本类访问

2.类

类的访问权限只有两种:public、默认

五、关于成员变量以及局部变量的基础知识

1.成员变量

有以下的java代码,声明两个成员变量,对这两个成员变量不赋初值,程序照样能运行。

public class Test {
    private String text;
    private int num;

    public int getNum() {
        return num;
    }

    public String getText() {
        return text;
    }
}

public class Main {
    public static void main(String[] args) {
        Test test = new Test();
        System.out.println(test.getNum());
        System.out.println(test.getText());





    }
}

在这里插入图片描述

2.局部变量

<font color=#999AAA 有以下的java代码,声明一个局部变量temp,但不赋初值,程序将报错。

public class Main {
    public static void main(String[] args) {
        find();
    




    }
    
    public static void find(){
        int temp;
        System.out.println(temp);
    }
}

在这里插入图片描述

本文链接http://www.dzjqx.cn/news/show-617060.html