Java基础学习(一):包,主类,数据类型及转换

Java基础学习(一):包,主类,数据类型及转换

一、Java包
1、定义:Java中,类文件不止一个会被使用,所以,Java代码以包管理。
2、关键字:package
3、简单示例:

package firstpack;

4、命名规则:一般为保存路径。
5、一般通过import来调用。

二、类的成员变量和局部变量
先明确概念:类 = 属性 + 方法,将类实例化,就是对象。
1、定义:①类的成员变量:类的属性。 ②方法的局部变量:方法中声明的变量,属性等。
2、作用域:①类的成员变量:类中任何地方都可以用。②方法的局部变量:只有当前方法可以访问。
3、访问修饰词:

公开访问权限 私有访问权限 继承访问权限
public private protected
public标识该类或者成员变量、成员函数对其他所有类文件都是公开的,其它类文件都可以直接调用 private标识该成员变量、成员函数只可以在自己的类文件内使用 继承是一个派生类的概念,父类中的protected成员允许被子类访问(后面会做介绍)

4、简单示例:

package firstpack;//这是一个包

public class great {
	public static String a = "a1是一个全局变量";
	//可以被其他类文件调用
	
	private static String b = "b1是一个全局变量";
	//只可以在此类文件中调用
	
	public static void way1() {
		String a2 = "我是方法里的属性";//方法里的局部变量
		System.out.println("这是一个方法," + a2);
	}//这是一个方法.
	
	public static void main(String[] args) {//void就是空,在方法申明的时候表示该方法没有返回值
		String a3 = "我 a3 是主方法里的变量!";
		System.out.println("这是一个主方法," + a3);
		way1();//调用方法
	}//这是一个主方法
}
——————————————————————————————————————
输出:这是一个主方法,我 a3 是主方法里的变量!
这是一个方法我是方法里的属性

三、基本数据类型
1、整数类型:byte/short/int/long + 变量名 ;

性质 最大值 最小值 默认值 所占内存
byte 127(2^7-1) -128(-2^7) 0 占内存8位,有符号,并以二进制补码表示整数,占1字节内存(只有int的四分之一)
short 32767(2^15-1) -32768(-2^15) 0 占内存16位,有符号,并以二进制补码表示整数,占2字节内存(只有int的二分之一)
int 2147483647(2^31-1) -2147483647(-2^31) 0 占内存32位,有符号,并以二进制补码表示整数,占4字节内存
long 2^63-1 -2^63 0L 占内存64位,有符号,并以二进制补码表示整数,占8字节内存.、,long类型需要在数字结尾加上L(一般为大写)

2、浮点类型:float/double + 变量名 ;,可用e来表示科学技术法,如32.24e-6

性质 表示 默认值 所占内存
float float小数后必须加D或f,不加默认double类型 0.0F 占内存32位,4字节
double 可加D或d,也可不加 0.0D 占内存64位,8字节

3、字符类型:char + 变量名 ;

  • char用来存储任何单一的16位Unicode字符,char类型可以存储任何字符。但数量只能为一个。
  • 使用 ‘’表示一个字符。
  • 最小值是\u0000(即为0)
  • 最大值为\uffff(即为65535)
转义符 说明
\n 换行符号
\r 回车
\t 制表符
\f 换页
单引号
" 双引号
\ 反斜线
\ddd 符合该正则表达式序列的是一个以八进制方式来表达的字符
\uxxxx 符合该正则表达式序列的是一个以十六进制方式来表达的Unicode字符

4、布尔类型:boolean + is变量名 ;一般变量不是false就是true,这里的is是好辨别,使语义更清晰。
5、应用对象类型:(后面介绍)
6、特殊值:null意为“等于零的”,“无价值的”,他表示一个变量没有任何值。null既不是对象,也不是一种基本数据类型,它是一种特殊值,基本类型不准赋值,但包装类型可以。
7、包装类:

Byte Short Integer Long
Byte a = Short a = Integer a = Long a =
public class first {

	public static void main(String[] args) {
		
		int a  = 100;
		Integer A = 100;//包装类定义

		System.out.println(a +"变形后"+ A.floatValue());
		//包装类引用属性有很多,方法是通过 . 来引用这些方法
	}
}

四、数据类型之间的转化
1、自动转换:数据运算必须为同一种数据类型,Java默认降低精度转化成高精度。
在这里插入图片描述
2、强制转化: 变量 =(强制转化类型)高精度变量值

  • 有缺点,容易导致精度丢失,或者可能直接截断。

3、进制转化:

public class first {

	public static void main(String[] args) {
		
		int x  = 100;
		
        System.out.println(Integer.toHexString(x));///10进制转换成16进制的字符串
        
        System.out.println(Integer.toOctalString(x));///10进制转换成8进制的字符串
        
        System.out.println(Integer.toBinaryString(x));///10进制转换成2进制的字符串
        
        System.out.println(Integer.toString(123456,7));///10进制转换成7(7可以更换)进制的字符串
	}
}

详情请参考:链接

“不积硅步,无以至千里”

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章