代码编织梦想

目录

话不多说,直接上车~

变量

代码1:

问题1:

知识点1:

基本数据类型

代码2:

问题2:

知识点2:

修饰符

代码3:

问题:

知识点3


变量

代码1:

public class Test02 {

    //常量,常量一般大写
    public static final int A = 10;
    //静态变量,被static修饰
    public static short B = 10;
    public static short E ;
    //成员变量
    public long C = 10;
    public long F;
    public static void main(String[] args) {

        //局部变量
        int D = 0;
        int G = 0;
        Test02 test02 = new Test02();
       
        System.out.println("常量A="+A);
        System.out.println("静态变量B="+B);
        System.out.println("实例变量C="+test02.C);
        System.out.println("局部变量="+D);
        System.out.println("静态变量默认值E="+E);
        System.out.println("实例变量F="+test02.F);
    }
}

问题1:

  1. 变量有几种?相互之间有什么区别?

知识点1:

变量:变量是可变的量。使用变量是为了在虚拟机内存中开辟出一块空间用于存储数据的。

JAVA中的变量共有三种类型。

  1. 静态变量:类之内,在方法体之外,被static 关键字修饰的成员变量就是静态变量。存在堆中(不同的JDK存放的位置不同,要看你的JDK是什么版本)。
  2. 成员/实例变量:类之内,方法体之外的变量。存在堆中。
  3. 局部变量:存在于方法体的变量,存在栈中。

面试题:三种变量 有什么区别?

1.调用方式不同:静态变量可以使用类名调用,也可以适用对象名调用。

                            实例变量只能通过对象名调用。

2.存在位置不同:静态变量存在方法区中。(和JDK版本有关)

                            实例变量存在堆内存中。

                            局部变量存在栈内存中。

3.生命周期不同:静态变量伴随类始终,从类的加载到类的卸载。

                            实例变量伴随对象始终。

                            局部变量是从声明位置开始到”}”为止

4.使用方式不同:静态变量和实例变量使用前可以不用初始化,会赋默认值。

                            局部变量必须初始化。

常量:数值不变的量。被 static final 修饰,存在方法区中。

基本数据类型

代码2:

public class Test03 {

    //byte
    public byte aByte;
    public static byte aByte01;

    //short
    public short aShort;

    //int
    public int anInt;

    //long
    public long aLong;

    //float
    public float aFloat;

    //double
    public double aDouble;

    //char
    public char aChar;

    //boolean
    public boolean aBoolean;



    public static void main(String[] args) {

        double l = 90.00;
        double l1 = 90.00d;
        float f =  90.0f;
        long l0 = 10L;
        char c = 'C';

        Test03 test03= new Test03();

        System.out.println("byte默认值"+test03.aByte+"大小"+" "+  Byte.SIZE+" "+"范围"+Byte.MIN_VALUE+"---"+Byte.MAX_VALUE);

        System.out.println("short默认值"+test03.aShort+"大小"+" "+  Short.SIZE+" "+"范围"+Short.MIN_VALUE+"---"+Short.MAX_VALUE);

        System.out.println("int默认值"+test03.anInt+"大小"+" "+  Integer.SIZE+" "+"范围"+Integer.MIN_VALUE+"---"+Integer.MAX_VALUE);

        System.out.println("long默认值"+test03.aLong+"大小"+" "+  Long.SIZE+" "+"范围"+Long.MIN_VALUE+"---"+Long.MAX_VALUE);

        System.out.println("float默认值"+test03.aFloat+"大小"+" "+  Float.SIZE+" "+"范围"+Float.MIN_VALUE+"---"+Float.MAX_VALUE);

        System.out.println("double默认值"+test03.aDouble+"大小"+" "+  Double.SIZE+" "+"范围"+Double.MIN_VALUE+"---"+Double.MAX_VALUE);

        System.out.println("char默认值"+test03.aChar+"大小"+" "+  Character.SIZE+" "+"范围"+Character.MIN_VALUE+"---"+Character.MAX_VALUE);

        System.out.println("boolean默认值"+test03.aBoolean);

    }

}

问题2:

  1. 基本数据类型中哪种数据类型默认值会有问题?
  2. 基本数据类型中的占几个字节?最大最小值是多少?

知识点2:

整数:

注意事项:   long后边需要加上L或l

                     float后边必须加f

                     double后边可以加D或不加

浮点数:

注意事项:   float后边必须加f

                     double后边可以加D或不加

字符型:

注意事项:   字符型的默认值是不定的。

                     声明时使用英文单引号,只能有一个字符。

布尔型:

修饰符

代码3:

public class Test04 {

    public int A = 0;

    protected int B = 1;

    int C = 2;

    private int D =3;

    public int add(int a,int b){
        return a+b;
    }



    protected int add01(int a,int b){

        return a+b;

    }



    int add03(int a,int b){

        return a+b;

    }





    private int add04(int a,int b){

        return a+b;

    }



    public static void main(String[] args) {

        Test04 test04 = new Test04();

        System.out.println(test04.add(3,5));

        System.out.println(test04.add01(3,5));

        System.out.println(test04.add03(3,5));

        System.out.println(test04.add04(3,5));

    }

}

 

问题:

  1. 四种修饰符能够用在哪里?
  2. 修饰符的作用是什么?

知识点3

java语言提供了很多修饰符,主要分为以下两类:

  • 访问修饰符
  • 非访问修饰符

访问控制修饰符 :

  • public : 对所有类可见。使用对象:类、接口、变量、方法。

主类必须要有public 否则解释器不能够运行。

  • protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)

子类与基类在同一包中:被声明为 protected 的变量、方法和构造器能被同一个包中的任何其他类访问;

子类与基类不在同一包中:那么在子类中,子类实例可以访问其从基类继承而来的 protected 方法,而不能访问基类实例的protected方法。

  • default (即默认,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。
  • private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类)

Private 访问修饰符的使用主要用来隐藏类的实现细节和保护类的数据。

非访问控制修饰符 :

为了实现一些其他的功能,Java 也提供了许多非访问修饰符。例如:

1.atic 修饰符,用来修饰类方法和类变量。

2.final 修饰符,用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。

3.abstract 修饰符,用来创建抽象类和抽象方法。

4.nchronized 和 volatile 修饰符,主要用于线程的编程。

总结:     Java中的变量主要是为了存储数据的,在内存的不同位置。

                数据的类型又分为基本数据类型和引用数据类型。

                修饰符用来定义类、方法或者变量,通常放在语句的最前端。

最后:祝大家都是能够做一个孤勇者~~~

https://music.163.com/#/song?id=1901371647&market=baiduqkicon-default.png?t=M85Bhttps://music.163.com/#/song?id=1901371647&market=baiduqk

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_51031363/article/details/126962837

javase基础复习总结_rsingstarzengjx的博客-爱代码爱编程

这里写自定义目录标题 基础语法第一个java 程序各个变量的解释代码块命名规则 标识符关键字Java修饰符java 类变量继承接口转义字符面试题: java基本数据类型有哪几种?基本数据类型引用数据类型

java 面试知识点解析(一)——基础知识篇-爱代码爱编程

前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大部分内容参照自这一篇文章,有一些自己补充的,也算是重新学习一下 Java 吧。 (一)Java 基础知识点 1)面向对象的特性有哪些?

java初级面试复习总结大全-爱代码爱编程

知识点 1.throwable:继承自Object类,实现serializable接口,两个子类 error和 exception 二者的不同之处: Exception: 1.可以是可被控制(checked) 或不可控制的(unchecked)。 2.表示一个由程序员导致的错误。 3.应该在应用程序级被处理。 Error: 1.总是不可控制的(unche

秋招准备之——Java虚拟机-爱代码爱编程

秋招复习笔记系列目录(不断更新中): 1.数据结构全系列2.计算机网络知识整理(一)3.计算机网络知识整理(二)4. Java虚拟机知识整理5.计算机操作系统6.深入理解HashMap7.深入理解ConcurrentHashMap前段时间看了周志明老师的《深入理解Java虚拟机(第三版)》,加上自己在看的过程中查找的一些资料和理解,做了一些笔记,今天趁着

Java基础复习-爱代码爱编程

近日复习的一些面试题,在网上收集了一些资料做的一些总结,希望能帮助到一些小伙伴。 Java基础 1、面向对象和面向过程的区别 面向对象: 性能比面向过程低。易维护、易复用、易扩展。面向对象有封装、继承、多态的特性,所以可以设计出低耦合的系统,使系统更加灵活、更易于维护。 面向过程: 性能比面向对象高。但没有易维护、易复用、易扩展。类调用需要实例化,

Java基础知识-爱代码爱编程

Java后端必掌握知识系列文章 1.Java基础—当前 2.数据库基本知识 3.Web后端 4.JVM必掌握 5.Spring核心之IOC和AOP 6. 数据结构与算法基础 文章目录 Java后端必掌握知识系列文章前言一.i java相关1.java相比其他程序设计语言的优势有那些?2.Java与C++的异同3.JDK JRE JVM?4.ja

阿里内部资料!10W字总结JAVA面试题-基础篇-爱代码爱编程

目录 1、JAVA语言有哪些特点 2、面向对象和面向过程的区别 3 、八种基本数据类型的大小,以及他们的封装类 4、标识符的命名规则。 5、instanceof 关键字的作用 6、Java自动装箱与拆箱 7、 重载和重写的区别 8、 equals与==的区别 9、 Hashcode的作用 10、Strin

Java Review 基础复习(一)-爱代码爱编程

编程基础+二进制 文章目录 编程基础+二进制1、编程基础1.1 数据类型和变量1.2 赋值整数类型的取值范围:小数类型的取值范围:真假类型:字符类型:1.2.1 数组类型1.3 基本运算1.3.1 算术运算1.3.2 比较运算1.3.3 逻辑运算1.4 条件执行1.4.1 语法和陷阱1.4.2 实现原理1.5 循环1.5.1 循环的4种形式1.5

java虚拟机一篇足以_吹老师的博客-爱代码爱编程

1、什么是JDK jdk全称“Java Development Kit”,指的是Java语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序的开发。jdk是java开发的核心,包括了Java运行环境、一堆Java工具和Java基础的类库。是SunMicrosystems针对Java开发员的产品,它是 Java 语言的软件开发工具包,主要

使用idea导入开发iuap2.0项目_四叶猫的博客-爱代码爱编程

前言 iuap2.0默认使用eclipse作为开发工具,但是实在是太卡太卡太卡了,所以计划导入到idea中,这样能节省大量的卡死时间,解决诸多问题后终于成功了,在这里做一个记录。 环境:idea 2021 2.4、tomc

java期末复习知识点 中_java课程设计期末复习-爱代码爱编程

碎碎念~ 啊重新整理一遍这些笔记才发现自己真的有好多不清晰的地方和没有完全理解的地方,后面封装啊抽象啊接口的语法并且没有完全理解,所以要趁着课程设计赶快好好整理好思绪啊加油加油 目录 面向对象概述 面向过程和面向对象有什么区别? 当我们采用面向对象的方式贯穿整个系统的话,涉及到三个术语: 面向对象包括三大特征 类和对象的概念 思考:“j