zoukankan      html  css  js  c++  java
  • java基本概念

    Java学习笔记(day01)

    注释

    • 单行注释: // 注释行
    • 多行注释: /* 注释文本 */
    • 文档注释: /** 注释文本 */

    编译型 , 解释型

    通过一个小例子来解释一下这两个名词, 现在有一本中文的小说, 有个外国人想看这本小说, 他肯定看不懂, 此时有两种方案:

    • 把这本书翻译成他能看懂的语言 ---------> 编译 ---------> 比如执行 javac test.java, Java编译器会编译这个文件,生成一个test.class, 然后由JVM去解释执行这个test.class.

    • 请一个能看懂这本小说, 能和他交流沟通的人, 讲给他听(假如他很有钱) -------> 执行速度依赖硬件的条件,现在硬件都特别好, 所以影响很小.

      java是一门既有编译型, 又有解释型的语言.


    数据类型

    Java 是一种强类型的语言, 对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间.

    基本数据类型: 分为四类八种

    整型

    • byte 1字节(1B(字节) = 8bit; 1KB = 1024B; 1MB = 1024KB)
    • short 2字节
    • int 4字节 (进制问题: 我们平时使用的是十进制; 0开头的是八进制; 0x开头的是16进制, 0b开头的是二进制)
    public class Hello{
       public static void main(String[] args) {
           int i1 = 10; // 十进制
           int i2 = 010; // 八进制
           int i3 = 0x10; // 16进制
           int i4 = 0b10; // 二进制
           System.out.println(i1);
           System.out.println(i2);
           System.out.println(i3);
           System.out.println(i4);
       }
    }
    
    输出结果:
    10
    8
    16
    2
    Process finished with exit code 0
    
    • long 8字节
    拓展: 不同数据类型的整型数字运算, 计算结果: 如果含有long,就为long类型,没有long都是int类型.

    浮点型

    • float 4字节 (代码中尽量不要使用float类型的变量去做比较, 本身精度不高, 银行类的业务可以使用BigDecimal工具类)
    • double 8字节

    字符型

    • char 2字节 (所有的字符本质还是数字)

    布尔型

    • boolean 1字节 (true/false)

    引用数据类型:三种

    • 类(class)
    • 接口(interface)
    • 数组([])

    类型转换

    • 隐式转换
    取值范围小的数据类型与取值范围大的数据类型进行运算时,会先将小的数据类型提升为大的,再做运算 
    byte,short,char --> int --> long --> float --> double
    
    • 强制转换
    public class Hello{
        public static void main(String[] args) {
            /* 强制转换:
            目标类型 变量名 = (目标类型) (被转换的数据).
            不建议强制转换,因为会有精度的损失.
            byte类型只能表示-127-128, b4的计算结果130在这个范围外, 强制转换为byte时就产生了错误的结果.
            */
            int i1 = 10;
            byte b1 = 20;
            byte b2 = 120;
            byte b3 = (byte) (i1 + b1);
            byte b4 = (byte) (i1 + b2);
            System.out.println(b3);
            System.out.println(b4);
        }
    }
    
    输出结果:
    30
    -126
    Process finished with exit code 0
    

    变量类型

    变量的定义格式:

    数据类型 变量名 = 初始化值;
    String s1 = "world";
    
    public class Hello{
        /*
        常量: 定义后不能更改, final修饰
         */
        final String DB = "2500";
        /*
        类变量: static修饰
         */
        static String s = "world";
        /*
        实例变量: 属于这个对象,可以不给初始值, 默认值:整型: 0; 浮点型: 0.0; boolean: false; 其他的都是null.
         */
        String str; // 实例变量
        public void hello(){
            /*
            局部变量, 必须给初始化的值, 仅在hello方法内部可用
             */
            String s1 = "world";
        }
        public static void main(String[] args) {
        }
    }
    
  • 相关阅读:
    终于和Java碰面了
    Servlet学习-MVC开发模式
    Servlet学习-数据库的操作
    Servlet学习-sendRedirect()和forward()
    Servlet学习-request
    Servlet学习-乱码解决方案
    Servlet学习-response
    Servlet学习-页面设置不缓存
    软件构造 第一章第二节 软件开发的质量属性
    软件构造 第二章 第一节 软件生命周期和版本控制
  • 原文地址:https://www.cnblogs.com/lvzl/p/14664400.html
Copyright © 2011-2022 走看看