java中字符类型变量的编码_Java-002-Java标识符-关键字-数据类型-运算符-进制转换-字符编码-变量...

1.Java语言的标识符:

标识符可以标识类名、接口名、变量名以及方法名。

1.1.Java标识符命名规则:

A.标识符是由数字,字母、下划线和美元符号构成,其他符号不可以

B.必须以字母(A-Z或音a-z),美元符(S)、或者下划线(_)开头

C.见名知意

D.驼峰命名法(首字母大写)例如:Person,CustomServices.

E.首字符之后可以是任何字符的组合

1.2.关键字不能用作标识符

在sm在开发java语言的时候定义的一些具有特殊含义的字符序列

Sun用了我们就不能用他作为标识符,我们只能其他的;

在java中关键字都是小写的

987c89d2a045ff87a55add6d09b2101e.png

C语言和C+语言中有用到 goto, const在iava中叫保留字,我们不能使用

1.3.标识符是大小写是敏感的

合法标识符举例:age、$salary、_value、_1_value

非法标识举例:123bc、-salary

2.数据类型:

Java总共有两种数据类型,主要有基本类型和引用类型,基本类型有8种,引用数据类型有三种

①基本数据类型

数值类型:A :整数型(byte , short , int ,long)

B: 浮点型(float,double)

字符类型:(char)

布尔类型:(boolean, 只能取 true 和 false)

八种数据类型的取值范围:

87fa82068c8809ebdbe0c27a8e0b9758.png

在计算机内部,所有信息都采用二进制表示,每个二进制由0和1两种状态,一个字节有8位,也就是由8个0或1构成,如果sot类型的6在计算机中是如何存储的,shot是两个字节,那么hort6的二进制为:0000000010int类型的6在计算机中存储为32位:00 010

②引用数据类型:

数组,类,接口

public class DataType {

public staticvoidmain(String[] args){/*1.Java标识符命名规则:

A.标识符是由数字,字母、下划线和美元符号构成,其他符号不可以

B.必须以字母(A-Z或音a-z),美元符(S)、或者下划线(_)开头

C.见名知意

D.驼峰命名法(首字母大写)例如:Person,CustomServices.

E.首字符之后可以是任何字符的组合

2.关键字不能用作标识符

3.标识符是大小写是敏感的*/String userName= "寇了了";

String _array= "Array";

String _$phoneNum= "18367151969";//String 1UserName = "Tony";//错误写法,不能以数字开头

System.out.println("用户名为:" +userName);

System.out.println(_array);

System.out.println(_$phoneNum);/*输出结果为:

用户名为:寇了了

Array

18367151969*/}

}

3.进制换算:

十进制到二进制的换算规则:除2取余,逆序输出

如10进制6二进制换算方式为: 6/2=3 余0

3/2=1余1

1/2=0 余1

将余数逆序输出就是6的二进制表示:110,位数不够补零

二进制到十进制的换算规则:取出最后一位,从2的0次方开始乘,将得到的结果相加即可

如:二进制的110的十进制换算:

0*2的0次方=0

1*2的1次方=2

1*2的2次方=4

110的十进制为:0+2+4=6

字母:

’a’ ASCII 97

Char 97 16 位

4.Java修饰符:

像其他语言一样,Java可以使用修饰符来修饰类中方法和属性。主要有两类修饰符

可访问修饰符:default, public, protected, private

不可访问修饰符: final, abstract, strictfp

5.字符编码:

ASCI字符编码采用一个字节编码,主要针对英文编码

ISO-8859-1 又称 latin-1,是国际化标准或组织ISO制定的,主要为了西欧语言中的字符编码,和ASCⅡ兼容

GB2312/GBK/GB18030主要是汉字编码,三种编码从容量上看是包含关系

unicode Unicode统一了全世界上的所有文字编码, unicode有几种实现:UTF-8 UTF-16 UTF-32

UTF-8存储格式(UTF-8主要就是为了节省空间)

public class CharType {

public staticvoidmain(String[] argv){/*char类型

char是字符类型 java中采用 UNICODE编码 底层占两个字节

char类型涉及到字符编码方式

1.字符编码方式是现实世界中的文件和计算机的表示方式的转换规则

ASCII

'a' 97

'A' 65

'0' 48

对应的二进制是多少

IOS-8859-1

GB2312 < GBK < GB18030 从容量上看,是包含关系

unicode utf-8, uft-16 ,utf-32

2.如果字符采用的编码和解码不一致的时候,就会出现乱码*/

char i = 'a';int j = '7';//char k = 'ab'; //错误写法

char m = '中';char t = 't';

System.out.println("i == " + i + " j == " + j + " m == " + m + " t == " +t);//斜线在Java语言中的转移功能,可以将普通t字符,转换成"制表符"

char b = '\t';//相当于电脑键盘的Tab键

System.out.println("b==" + b);//输出为一个制表符

System.out.println("My Name is Steven");//Java中一个普通的"单引号"字符

char k = '\'';

System.out.println("k == " +k);//Java中一个普通的"斜线"字符

char l = '\\';

System.out.println("l == " +l);//Java中一个普通的"双引号"字符

char n = '\"';

System.out.println("n == " +n);//Java中一个普通的换行符

char o = '\n';//相当于键盘回车键

System.out.println("StevenA");//System.out.println(o);

System.out.println("");//print 不换行,println换行

System.out.println("StevenB");/*输出结果为:

i == a j == 55 m == 中 t == t

b==

My Name is Steven

k == '

l == \

n == "

StevenA

StevenB*/}

}

6.Java的变量

变量其实是java中的一个最基本的单元,也就是内存中的一块区域, Java中的变量有四个基本属性:变量名,数据类型,存储单元和变量值

◆变量名:合法的标识符

◆变量的数据类型:可以是基本类型和引用类型(必须包含类型)

◆存储单元:存储单元大小是由数据类型決定的,如:int为4个字节32位

◆变量值:在存储单元中放的就是变暈值(如果是基本类型放的就是具体值, 如果是引用类型放的是内存地址,如果null, 表示不指向任何对象

◆变量的声明格式:类型 变量名;

Java数组:

数组是储存在堆上的对象,可以保存多个同类型变量。在后面的章节中,我们将会学到如何声明、构造以及初始化一个数组

Java枚举:

Java 5.0引入了枚举,枚举限制变量只能是预先设定好的值。使用枚举可以减少代码中的bug.

例如,我们为果汁店设计一个程序,它将限制果汁为小杯、中杯、大杯。这就意味着它不允许顾客点除了这三种尺寸外的果汁。

classFreshJuice {

enumFreshJuiceSize{

SMALL,

MEDIUM,

LARGE

}

FreshJuiceSize size;

}

public classJavaEnum {

public static voidmain(String[] args) {

FreshJuice juice = newFreshJuice();

juice.size= FreshJuice.FreshJuiceSize.MEDIUM;

System.out.println("juiceSize == "+ juice.size);//juiceSize == MEDIUM

}

}

注意:枚举可以单独声明或者声明在类里面。方法、变量、构造函数也可以在枚举中定义。

Java关键字

public classJavaKeyWord {public static voidmain(String[] args) {/*//访问控制

private 私有的

protected 受保护的

public 公共的

//类、方法和变量修饰符

abstract 声明抽象

class 类

extends 扩展,继承

final 最终值,不可改变的

implements 实现(接口)

interface 接口

native 本地,原生方法(非Java实现)

new 新,创建

static 静态

strictfp 严格,精准

synchronized 线程,同步

transient 短暂

volatile 易失

//程序控制语句

break 跳出循环

case 定义一个值以供switch选择

continue 继续

default 默认

do 运行

else 否则

for 循环

if 如果

instanceof 实例

return 返回

switch 根据值选择执行

while 循环

//错误处理

assert 断言表达式是否为真

catch 捕捉异常

finally 有没有异常都执行

throw 抛出一个异常对象

throws 声明一个异常可能被抛出

try 捕获异常

//包相关

import 引入

package 包

//基本类型

boolean 布尔型

byte 字节型

char 字符型

double 双精度浮点

float 单精度浮点

int 整型

long 长整型

short 短整型

//变量引用

super 父类,超类

this 本类

void 无返回值

//保留关键字

goto 是关键字,但不能使用

const 是关键字,但不能使用

null 空*/}

}

//super关键字的作用:

// 调用父类的构造方法

// 调用父类的成员方法

// 需要注意: super只能应用在成员方法和构造方法中,不能应用在静态方法中(和this是样的),如果在构造方法中使用必须放在第一行

// 为什么会有 super关键字?

// 因为子类必须要调用父类的构造方法,先把父类构造完成,因为子类依赖于父类,没有父,也就没有子有时需要在子类中显示的调用父类的成员方法

//super 通过子类的构造方法调用父类的构造

//语法规则:个构造方法第一行如果没有this(,);也没有显示去调用 super();系统会默认调用 super();

//注意:super的调用必须放在构造方法的第一句 super和this不能共存

//使用 abstract定义抽象方法/如果一个类中含有抽象方法,那么这个类必须定义成抽象

// 如果类是一个抽象的,并不要求具有抽象的方法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值