Java编程基础:数据类型、数组操作、函数与面向对象核心概念解析

一、基本类型

1.1八大基本类型

  • 数值型:整数类型(byte、short、int、long)和浮点类型(float、double)。
  • 字符型:char。
  • 布尔型:boolean。
数据类型占用字节默认值数据范围
整数byte10-2^7~2^7-1
short20-2^15~2^15-1
int40-2^31~2^31-1
long80-2^63~2^63-1
浮点数float40.0f-2^31~2^31-1
double80.0d-2^63~2^63-1
字符char20~2^15-1
布尔boolean1falsetrue、false

1.2类型转换

数据范围从小到大:

byte、short、char --> int --> long --> float --> double,其中byte、short、char在运算时自动提升为int。

1.2.1自动类型转换

  1. 代码不需要特殊处理,自动完成转换;
  2. 数据范围从小到大。

1.2.2强制类型转换

  1. 代码需要进行特殊的格式处理,不能自动完成;
  2. 数据范围从大到小;
  3. 格式:范围小的类型 范围小的变量名 = (范围小的类型)范围大的数据。

强制类型转换一般不建议使用,因为可能发生精度损失(高精度转低精度)和数据溢出(例long转int)。

二、数组

2.1Java的数组声明和C语言的区别

//Java
int[] a=new int[3];
int b[];
b=new int[5];
//C
int a[3];

Java中[ ]不可以指定大小,只能在new后面来指定数组大小。

C中[ ]可直接声明数组大小。

2.2foreach遍历一个数组

int[] a=new int[]{1,2,3,4};
for(int i:a){
    System.out.println(i);
}

三、函数

3.1Java的主方法(函数)

public static void main(String[] args) {}

3.2如何声明一个普通方法函数

[修饰符1 修饰符2 ...] 返回值类型 方法名(参数类型 参数名1, 参数类型 参数名2, ...) {
    // 方法体
    [return 返回值;]
}

3.3如何在主方法里面调用普通方法

public class Example {
    // 声明一个返回两数之和的方法
    public static int add(int a, int b) {
        return a + b;
    }
 
    public static void main(String[] args) {
        int sum = add(3, 4);
        System.out.println("The sum is: " + sum);
    }
}

四、面向对象

4.1类和对象

  • 类是一个模板,它描述一类对象的行为和状态(比如一张汽车设计图纸)。
  • 对象表示现实世界中一个具体的事物。对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。(比如根据汽车设计图纸设计出来的汽车)。

4.2三大特性

4.2.1封装

封装就是把事物封装成类,将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。

作用:尽可能地隐藏对象的内部实现细节、控制用户对类的修改和访问权限(体现:private属性) 提高代码的可维护性。

封装主要解决的问题是类的安全性和可维护性 ,使得类的实现细节被隐藏,只暴露出有限的接口和功能给外部使用,从而减少了类之间的耦合性。同时,封装还可以实现数据隐藏和数据保护,提高程序的可靠性和可扩展性。

4.2.2继承

继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。但Java只支持单继承 ,一个子类只能继承一个父类,不能继承多个父类 ,但是可以多重继承。

关键字:extends

格式: class 子类 extends 父类{ }

继承主要解决的问题就是共性的抽取,实现代码的复用

4.2.3多态

多态就是多种形态,具体点就是去完成某个行为,当不同的对象去完成时产生不同的状态。

在Java中要实现多态,必须要满足以下几个条件:

  1. 必须在继承的体系下
  2. 子类必须要对父类中的方法进行重写
  3. 通过父类的引用调用重写的方法

多态主要解决的问题是代码的可重用性和扩展性,使得代码更加灵活和易于维护。通过多态,我们可以将不同的对象看做是同一种类型,从而使得我们可以使用同一种接口来操作这些对象,而不必关心具体的实现细节。

4.3局部变量和成员变量

  • 局部变量是在方法中定义的变量,它的作用域为这个方法中。
  • 成员变量是在类中定义的变量,它的作用域为这个类中

4.4构造方法

构造方法是类的一种特殊方法,用来初始化类的一个新的对象,在创建对象(new 运算符)之后自动调用。

class Dog{
    String name;
    int age;
    Dog(String Name,int Age){
        name=Name;
        age=Age;
    }
}
        

类里面会隐式带一个无参构造方法,如果进行了显示声明,那自带的隐式构造就没有效果了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值