Java语言学习笔记——20121222课程笔记

一、晨写
1、常用DOS指令
盘符号切换  盘符号: D:
Dir
cd
cd..
Cd\
Del 目录名称
Md
Copy con 文件名.文件后缀 编辑内容 ctl+z
Cls 
Rd
Rd/s
Ipconfig
Ping IP地址
2、JDK Java软件运行包
Jre java运行环境
Jvm java虚拟机
JDk包含jre包含jvm
3、java通过不同系统jvm虚拟机即可实现跨平台,一处编译到处浪
二、回顾内容(重点)
1、前两周(一直使用dos 基本dos指令敲熟练)
2、概念(Java语言特点/Java发展历史(时间、人物)/Java三大平台版本)
3、Java环境配置(重点 Path环境变量)
        第一种方式就不用了:
            直接将Jdk安装目录中的bin路径 复制到系统环境变量中path里面即可
        第二种方式:
            在系统变量中新建变量名:JAVA_HOME
                                        变量值:路径
                        Path:%JAVA_HOME%\bin;后面其他系统变量
4、为什么要配置path环境变量
        想让Java文件在任何目录/任何地方都能进行编译Java文件和运行类
        Javac  源文件.java
        Java    class文件的前缀(类名)
        Java文件在哪个目录中——需要在指定的目录中进行编译和运行
三、今日内容
1、关键字————被Java语言赋予特定含义的单词
——注释,提高可阅读性和解决问题:单行和多行不会被编译,文档注释可编译——
    /*
    在高级记事本或开发工具eclipse/idea中,针对关键字有特殊颜色标识
    class:Java中最基本的单元(定义一个类)
    public:权限修饰符(公开的/公共的:访问权限足够大)
    static:静态修饰符(面向对象中讲(共享/共用))
    void:和Java中的方法定义有个关系
    
    关键字还有很多:数据类型等等,关键字积累会越来越多,每一个单词都有一种特定含义
    (关键字都是小写!) 
    
    */
2、标识符(识记)
    /*
        标识符:是一种给类名、方法名、接口名、变量名、常量等,
                起名字的一个字符序列——必须“见名知意”
        组成规则:
                1)26个英文字母
                2)$符号
                3)_下划线
                4)数字字符
        
        包(文件夹,都是字母小写)
     (package):使用(面向对象中使用) 一般都是多级包(公司域名反写)com.baidu.www
                                    单级包
                                            com
                                                        hello.java
                                                        xxx.java
                                    多级包(包和包(目录)之间使用.隔开)
                                        com.qf.dev
                                                    com文件夹
                                                            qf文件夹
                                                                    dev文件夹
                                                                                xx.java
       给类起名字
               “大驼峰命名法”(阿里的规范)
                如果当前类名/接口是一个单词:那么首字母大写,其他单词小写
                class Hello{}
                class Demo{} 
                如果当前类名/接口是多个单词:那么每个单词的首字母都大写,其余小写
                class HelloWorld{}
                class MakeNameDemo{}
                数字不能作为开头
        给方法和变量名起名字
                遵循“小驼峰命名法”
                如果是一个单词:
                                    字母全部小写
                                    main():Jvm识别的main方法
                                    自定义一个方法名:
                                    check():检查的方法
                                    Int age=20;//20岁
                如果是多个单词:
                                    第一个单词全部小写,从第二个单词开始首字母都是大写
                                    checkUserName():
                                    checkUserPassword():
                                    Int studentAge =20;
        给常量起名字:
                单个单词:字母全部大写(很少用)    
                HELLO
                实际开发中,使用的都是多个单词(使用居多):
                            每个单词字母都大写,中间用_下划线隔开
                    举例:
                        MIN_PRIORITY= 1;       最小优先级
                        NORM_PRIORITY = 5;   默认优先级
                        MAX_PRIORITY = 10;    最大优先级
                    
                     后期学习多线程:多线程里面有一些常量(线程的优先级)
                    比如:第一阶段  小项目:网络聊天室
                    客户端——服务器端:发送数据时,服务器端如何得知是私聊/公聊模式呢?
                    自定义常量
                                public static final int PRIVATE_TALK=100;私聊
                                public static final int PUBLIC_TALK=100;私聊
                    反例:
                                class helloworld{        
                                        //可以这么写,但是不规范(在公司企业几乎都遵循阿里规范)
                    }
                            
                组成标识的注意事项
                        1)虽然可以有数字字符出现,但是数字不能开头
                                int 1productprice=100;
        System.out.println(1productprice);
                       2)Java严格区分大小写,但是起名字一定要见名知意
                        3)Java中的关键字不能作为“标识符”
        int public = 25 ;
        System.out.println(public);
        _(下划线)的出现(变量中定义/常量中有,类名/接口名中很少见,但$在内部类会有)
                
    */
——————————字节码文件要用反编译工具打开——————————
3、常量
/*
    常量:
            在程序的执行过程中,其值不发生改变的量!
            意味常驻内存,字符串常量池
            比如“再牛的肖邦也弹不出哥的悲伤”就是一个字符串
    
    常量的分类:
        两大类
            1)字面值常量
                1⃣️字符串常量
                    使用双引号括起来的内容———“hello”,"helloworld","我爱高圆圆"
        字符串+任何数据=“新的字符串”,此时的+是字符串拼接符号    
        任何数据+“字符串”=“新的字符串”
        
                2⃣️字符常量
                        使用单引号括起来的单个内容 ‘a’,‘b’,‘0’,‘A’
                        'ab':不行
            
            2)自定义常量:(面向对象中讲解————final关键字)
*/
class ConstantDemo{
    public static void main(String[] args){//程序入口
        
        //字符串常量
        System.out.println("hello,高圆圆");//必须是双引号
        System.out.println("hello"+7);//字符串+任何数据=“新的字符串” “hello”+7=“hello7”
        System.out.println("7");//"7"是字符串7,而非整数int 7
        //任何数据+“字符串”=“新的字符串”:
        System.out.println(98+"=5+5");//98=5+5
        
        System.out.println("-------------------");
        
        //字符常量:
        //当字符不参与运算的时候:本身描述的就是字符本身的值,
        //但是如果字符参与运算,字符就会寻找对应的ASCII码表对应的值进行运算
        System.out.println('A');
        System.out.println('B');
        System.out.println('C');
        System.out.println('0');
        //System.out.println('abc');这个就不行,必须单个字符
        
        System.out.println("-------------------");
        
        //'A'----ASCII码表的值是65
        //'a'----ASCII码表的值是97
        //'0'----ASCII码表的值是48
        System.out.println('A'+1);//此时的+是运算符号
        System.out.println('a'+1);
        System.out.println('0'+1);
        
    }
    
}
        
                        3⃣️整数常量
100,66..
进制也属于常量的范畴
                                包括“进制”、二进制、八进制、十进制(整数默认)、十六进制
System.out.println(100);
System.out.println(9527);
System.out.println(19);
反例:
System.out.println(008);——————》这时报错,此时这个数据会认为是八进制,八进制是以“0”开头
进制?什么是进制?————数据进位的一种方式
二进制  逢2进1
八进制  逢8进1
十进制  整数默认就是十进制
十六进制  逢16进1
进制的由来:
早期,描述一个数据,使用机械关电元件开和关,使用0,1代表数据
当数据越来越大的时候,使用0,1代表数据不能满足需求,使用8个这样的符号 bit(比特)代表整个数据
从而组成二进制数据,
以0b开头
八进制:在二进制的基础上,从右边到左边每三个比特位组成一组数据,左边不够的补0
最终计算出每个位上的十进制——从左到右讲数据排列起来——形成“”八进制数据
有0,1,2,3,4..7组成,以0开头表示
十进制
十六进制:在二进制基础上,从右到左每四个比特位一组,左边不够的补0,计算出每组中的十进制数据
0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,以“0x”开头表示
进制越大,表现形式越短!
十进制转换成任意进制——除基取余
————————————————————————————
二进制和十进制之间的快速转化法——8421码(BCD码的一种)
每一个二进制上的比特位都是1,他们都对应一个十进制的数据值
当将二进制转十进制————》将它比特位上师1点数据对应的十进制数据加起来————〉得出结果
————————————————————————
数据的有符号位的数据表示法:
WHY——运算符(位运算符)
计算机底层对数据的计算——使用“补码”进行计算的!
一个正整数7 :有两个部分组成:最高符号位和数值位组成
原码————》反码—————〉 补码
再用补码进行计算,得到反码,得到原码(看到的数据)
正整数,原码,反码,补码都相同
+7:最高符号位如果是0,就是正数
-7:最高符号位如果是1,就是负数
+7:原码
最高符号位          数值位
0                          0000111
反码
0                          0000111
补码
0                          0000111
-7,负数:知道了原码——反码:在原码的基础上,符号位不变,数值位按位取反(1变0 ,0变1)
补码:在反码的基础上,末尾+1
最高符号位          数值位
1                          0000111
反码
1                          1111000
补码
1                          1111001
题目:通过补码计算原码
                        4⃣️小数常量
1.34  12.56
System.out.println(1.3415926-12.556); 减法/除法,小数计算(可能无限接近某个数字,因为计算机伪计算!),Jdk后期提供了一个bigdecimal类可以进行精确计算
                        5⃣️布尔常量
True/false(有颜色,其实也算关键字)
System.out.println(true);
System.out.println(false);
                        6⃣️空常量 null——应用引用数据类型的默认值就是null,特殊的引用string
Java数据类型——基本类型/引用类型
String s = null ; //后期引用类型中说
        String s2 = "" ; //有内容,不过是空串
        System.out.println(s) ;
        System.out.println("s2:"+s2+"---") ;//"s2:"
4、变量(重点)
1)定义:在程序的执行过程中,其值发生改变的量称为变量
2)变量三要素
1)声明限定(数据类型)
2)给当前变量起一个名字(按照标识符的规则,遵循“小驼峰命名法”:见名知意)
3)初始化值:如果变量使用之前都没有赋值,就“报错了”
3)格式
        数据类型 变量名=初始化值;
4)Java数据类型(重点)两大类
1⃣️基本数据类型(四大类型,8种)
整数类型:默认int类型
     byte字节类型 占用的字节数是1个字节 (范围:-128~127)记住
     short短整类型2个字节
     Int 默认类型  4个字节
     long长整型8个字节
    实际开发中:正数使用最多int(以后没有明确类型,都是按int)
    其次long(以后用做定义时间——记录当前系统时间毫秒)
浮点类型:默认double类型
    float单精度类型占4个字节
    double双精度类型占8个字节
    实际开发中使用最多的就是double(举例:商品价格/商城价格)
字符类型
    char占两个字节数
    char ch=‘A'
布尔类型不参与运算(只是提供判断)
    boolean (true/false)
    boolean flag=true
2⃣️引用数据类型:类,数组,接口(后期研究)
超市买苹果  得用钱买,用你好买不到,所以首先要声明限定(数据类型)
7元
5元
Int appleprice=7;
applePrice=5;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值