JavaSE-java语法基础(二)

原创 2017年01月03日 11:42:05

一、标识符中常见的命名规则:
常见的命名规则:见名知意
举例:定义一个学生类
class Student{}
包:其实就是文件夹,用于把相同的类名进行区分。
全部小写
单级:yangbin
多级:cn.yangbin
类或接口:
一个单词:单词的首字母必须大写
举例:Student,Dog
多个单词:每个单词的首字母必须大写
举例:HelloWorld,StudentName
方法或者变量:
一个单词:单词的首字母小写
举例:main , age
多个单词:从第二个单词开始,每个单词的首字母大写。
举例:studentAge,showAllNames()
常量:
一个单词:全部大写
举例:PI
多个单词:每个字母都大写,用下划线隔开
举例:STUDENT_MAX_AGE


二、注释:
1.java中注释的分类及格式:
单行注释://
多行注释:/**/
注意:多行不可以嵌套使用,而单行是可以的。

2.先写注释,再写代码!

例如:

/*
    需求:我准备写一个java程序,把“HelloWorld”这句话输出在控制台
    分析:
        A:需要写一个java程序,必须定义类
        B:把数据能够输出,说明我们的程序是可以独立运行的,而程序要独立运行,必须定义main方法
        C:把数据输出在控制台,必须使用输出语句
    实现:
        A:java语言提供了一个关键字,class用来定义类,后面跟的是类名
        B:main方法的格式是固定的:
            public static void main (String[] args){}
        C:输出语句的格式是固定的:
            System.out.println("HelloWorld");
*/

//这是我的HelloWord案例
class HelloWorld{
    /*
        为了程序能够独立运行,定义main方法
        main方法是程序的入口
        被jvm自动调用
    */
    public static void main(String[] args){
        //为了把数据显示在控制台,我们就使用了输出语句
        System.out.println("HelloWorld");
    }
}

3.注释的作用:
A:解释说明程序,提高程序的阅读性
B:可以帮助我们调试程序,后面我们会讲解更高级的调试。


三、进制
1.其他进制到十进制的转换:

十进制                十进制
12345  = 10000 + 2000 + 300 + 40 + 5
       = 1*10^4 + 2*10^3 + 3*10^2 + 4*10^1 + 5*10^0
       = 10000 + 2000 + 300 + 40 + 5
       = 12345


    二进制                  十进制
    100                       4
    100 = 1*2^2 + 0*2^1 + 0*2^0
        = 4+0
        = 4

    八进制                    十进制
    100                          4
    100 = 1*8^2 + 0*8^1 + 0*8^0
        = 64

2.十进制到其他进制的转换:

十进制                   十进制
12345                     12345

 12345/10                   5
 1234/10                    4
 123/10                     3
 12/10                      2
 1/10                       1
除基取余,直到商为0,余数反转。

3.“8421码”是中国大陆的叫法,是BCD码的一种。在这种编码方式中每一位二进制代码的1
都是代表一个固定数值,把每一位的1代表的十进制数加起来,得到的结果就是
它所代表的十进制数码。

1   1   1   1   1   1   1   1
128 64  32  16  8   4   2   1

二进制到十进制的转换:
1010100 = 64 + 16 + 4
        = 84
十进制到二进制的转换:
 100 = 1100100

问题:任意的x进制到Y进制的转换,怎么办?
x进制 - 十进制
十进制 - y进制
或者是
拆分组合法(快速转换)
即八进制就取3位为一组
十六进制就取4位为一组


四、原码反码补码
有符号的数据表示法:
1.有符号数有三种表示法:原码,反码,补码。所有
数据的运算都是采用补码进行的。
2.为什么讲解这个知识点?
因为计算机在操作的时候,都是采用数据对应的二进制
的补码来计算的。
3.用原码,反码,补码用来表示+7,-7

首先我们得到7的二进制:111
        原码:
                符号位          数值位
        +7         0          0000111     
        -7         1          0000111      

        正数的原码最高位是0;
        负数的原码最高位是1;
        其他的是数值位;

        反码:

                符号位          数值位
        +7         0          0000111     
        -7         1          1111000      

        正数的反码与原码相同;
        负数的反码与原码是符号位不变,
        数值位取反,就是1变0,0变1;    

        补码:
                符号位          数值位
        +7         0          0000111     
        -7         1          1111001           

        正数的补码与原码相同;
        负数的补码是在反码的基础上加1;
练习:A、已知某数x的原码为10110100B,试求x的补码和反码   
              符号位              数值位
    原码      1                  0110100
    反码      1                  1001011
    补码      1                  1001100

    B、已知某数x的补码为11101110B,试求其原码。
              符号位              数值位
    补码:       1             1101110     
    反码:       1             1101101      
    原码         1             0010010       

五、float数据在内存中是怎样存储的?
float类型数字在计算机中用4个字节存储。遵循IEEE-754格式标准:
一个浮点数有2部分组成:底数m和指数e

底数部分 使用二进制数来表示此浮点数的实际值
指数部分 占用8bit的二进制数,可表示数值范围为0-255
但是指数可正可负,所以,IEEE规定,此处算出的次方必须减去127才是真正的指数。
所以,float类型的指数可从-126到128

底数部分实际是占用24bit的一个值,但是最高位始终为1,所以,最高位省去不存储,在存储中占23bit
科学计数法。

格式:
SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM
S表示浮点数正负
E指数加上127后的值得二进制数据
M底数

举例:
17.625在内存中的存储

首先要把17.625换算成二进制:10001.101

    整数部分,除以2,直到商为0,余数反转。
    小数部分,乘以2,直到乘位0,进位顺序取。

在将10001.101右移,直到小数点前只剩1位:
    1.0001101 * 2^4 因为右移动了四位

这个时候,我们的底数和指数就出来了
底数:因为小数点前必为1,所以IEEE规定只记录小数点后的就好。所以,此处的底数为:0001101
指数:实际为4,必须加上127(转出的时候,减去127),所以为131。也就是10000011
符号部分是整数,所以是0
综上所述,17.625在内存中的存储格式是:
01000001 10001101 00000000 00000000 
版权声明:本文为博主原创文章,未经博主允许不得转载。

Android Stuido Ndk-Jni 开发(三):Jni基本语法

Android Stuido Ndk-Jni 开发(三):Jni基本语法Jni数据类型 jni基本类型 jni常用函数...
  • loque
  • loque
  • 2016年02月24日 14:49
  • 349

Python基础语法之——Lambda

表达式及定义 lambda [ arg1 [arg2, arg3, … argN] ] : expression                       – 《Python核心编程》从《pyth...
  • qiu931110
  • qiu931110
  • 2017年08月07日 23:14
  • 126

JAVA基础及语法部分面试题(3)

1、写clone()方法时,通常都有一行代码,是什么?【基础】 答:Clone 有缺省行为:super.clone(),他负责产生正确大小的空间,并逐位复制。 2、GC是什么? 为什么要有GC?...
  • qq_24082497
  • qq_24082497
  • 2016年08月16日 09:57
  • 546

Delphi基本语法格式

1.      常量:固定值,不可变数。1)       const       常量名 = 常量值(表达式);2)       resourcestring       常量名 = 字符串(常量);...
  • Tercel99
  • Tercel99
  • 2006年04月22日 12:35
  • 4784

第一章:JavaScript基础---(一)基础语法

很渴望快速学习完成项目,不希望花费太多的时间来学习一门语言,虽然本文没有详细介绍特性但是以下 代码运行就足以理解JavaScript语法,观察以下代码,复制到文本中用浏览器打开。 Java...
  • b275518834
  • b275518834
  • 2012年11月03日 00:12
  • 2665

Day01-HTML基础

标签(空格分隔): HTML基础CS和BS的软件架构模式 CS的特点 1.由于客服端做了一些辅助计算,所以服务器运行的符合较轻 2.数据的存储管理功能较为透明 3.拥有高成本的维护...
  • heisedelangzi
  • heisedelangzi
  • 2015年07月21日 00:11
  • 626

Spark MLlib 学习入门笔记 - RDD基础

RDD(Resilient Distributed Datasets)分布式弹性数据集,将数据分布存储在不同节点的计算机内存中进行存储和处理。RDD的任务被分成两部分:Transformation和A...
  • h8b6Pk7M7r8
  • h8b6Pk7M7r8
  • 2018年01月06日 00:00
  • 139

黑马程序员-----Java语法基础(二)

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 一、方法 定义方法的语法如下所示: 修饰符    返回值类型     方法名(参数列表){ //...
  • yyk_3264
  • yyk_3264
  • 2015年03月05日 19:59
  • 237

Java语法基础(二)

运算符运算符优先级 优先级 描述 运算符 1 括号 ()、[] 2 正负号 +、- 3 自增自减,非 ++、- -、! 4 乘除,取余 *、/...
  • gafeng123456
  • gafeng123456
  • 2016年01月10日 12:16
  • 136

黑马程序员——Java语法基础(二)

------- android培训、java培训、期待与您交流! ----------   一、函数 1. 定义: 函数就是定义在类中的具有特定功能的一段独立小程序。          ...
  • u012958888
  • u012958888
  • 2013年11月26日 10:59
  • 270
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaSE-java语法基础(二)
举报原因:
原因补充:

(最多只允许输入30个字)