【java】java基础知识复习

java基础知识复习

1.java是一种面对象的语言,java 所有类型其实都有对象关联(除了基本数据类型)
2.变量:程序运行中可以改变的量(数据)
 变量的实质是一小块内存的单元,而这一小块内存单元中存储着变量的值
 变量声明:数据类型 变量名;
3.变量的作用域:即变量能生效的范围,一般是变量所定义的代码块
4.变量的命名规则:

  1. 必须以字母、下划线"_"、或‘"$"符号开头
  2. 可以包含数字、区分大小写
  3. 不能使用java语言的关键字

5.变量赋值:数据类型 变量名=值、表达式;

1.等号左边是个框、把右边的值存入到左边
int a=10;
int b=a;
2.等号左边是值,等号右边是值;
int []a={1,2,3,4};
int []b=a;
a[0]=10;

6.数据类型:基本数据类型和引用数据类型

基本数据类型默认值存储包装类
booleanfalse1位java.lang.Boolean
byte01字节java.lang.Byte
short02字节java.lang.Shorter
int04字节java.lang.Integer
long0L8字节java.lang.Long
float0.0F4字节java.lang.Float
double0.08字节java.lang.Double
char‘\u0000’2字节java.lang.Character
引用类型null注:引用类型分为数组引用、接口引用、类引用

7.什么是引用?

  • 如果一个变量的类型是数组类型、类类型,而非基本类型,那么该变量又叫做引用
  • 引用实质:就是某个目标变量的别名,对引用的操作就是对变量的直接操作,它们效果是完全一样的
  • 引用不是一种新的数据类型,因此它本身不占存储单元,系统也不会为它分配存储单元
  • 方法调用过程中引用类型也是值传递,形参的改变不会影响实参的改变
int[]a={1,2,3};       //1.a是一个int[]引用;      2.指向一个元素类型是int的数组
Node node=new Node(1);//1.node 是一个Node引用;   2.指向一个新创建的对象
Node head=node;       //1.head是一个Node引用;    2.指向node引用指向的对象
Integer i=10;         //1.i是一个Integer类型的引用;2.指向一个integer类型的对象

8.常量:程序运行时,不发生改变的值(数据)

  1. 字面值常量
10       // int 字面值常量(十进制)
010      // int 字面值常量(八进制) 由数字 0 开头. 010 也就是十进制的 8
0x10     // int 字面值常量(十六进制) 由数字 0x 开头. 0x10 也就是十进制的 16
10L      // long 字面值常量. 也可以写作 10l (小写的L)
1.0      // double 字面值常量. 也可以写作 1.0d 或者 1.0D
1.5e2    // double 字面值常量. 科学计数法表示. 相当于 1.5 * 10^2
1.0f     // float 字面值常量, 也可以写作 1.0F
true     // boolen 字面值常量, 同样的还有 false
'a'      // char 字面值常量, 单引号中只能有一个字符
"abc"    // String 字面值常量, 双引号中可以有多个字符.
  1. final关键字修饰的常量
final int a = 10;
a = 20; // 编译出错. 提示无法为最终变量a分配值

9.类型转换:当不同类型之间的变量相互赋值时会产生
 隐式转换:范围小的可以隐式转换成范围较大的
 显示转换:强制转换类型(损失精度)

//1.两边类型一致   可以赋值
//2.左边的类型比较
long a = 10;  10int类型可以隐式转换为long类型 
//3.左边类型小
int a = 10L;
int a = (int)10L   强制类型转换(损失精度)
//4. 两边无关系,运行出现错误

10.数值提升:

  • 不同类型的数据混合运算,范围小的会提升成范围大的
  • 对于short,byte这种比4个字节小的类型,会先提升成4个字节的int,再运算

11.程序结构
 1)顺序结构
 2)分支结构
 3)循环结构 for()和while()和do{}while();
 4)子程序结构(方法)
注意:

  1. 用语句组织,用分号结尾的表达式或者方法调用
  2. 所有的语句都得出现在方法(和静态)中/构造(静态构造)块
  3. 语句都出现在方法中,初始化语句,赋值语句除外
class 
{
    int a=10;
    int b=20;
    System.out.println(a+b);  // 语句出现在成员级别了
}
//不是所有的分支都有返回语句
int menthod(int a)
{
    if(a>10)
    {
        return 1;
    }
    if(a=10)
    {
        return 0;
    }
    if(a<10)
    {
        return -1;
    }
}
int menthod(int a)
{
    if(a>10)
    {
        return 1;
    }
    else if(a==10)
    {
        return 0;
    }
    else
    {
        return -1;
    }
}  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值