【JAVA】基础入门知识点回顾

1. public static String与 public static final String的差异

String 为不可变对象,一旦产生,就不可以改变其值。
public static String ,这个只是定义静态的String 变量,变量的值可以改变,可以改变对象的地址。
public static final String ,这个定义的String 对象,其值和指向都不可再改变,就是定义了一个String 常量。
public static String str = "abc"; 操作中可以str ="bcd" 或 str = new String("bcd");
public static final String 定义的变量不可以进行上述操作。

2.
public static void main(String[] args)是java程序的入口地址,java虚拟机运行程序的时候首先找的就是main方法

public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样java虚拟机就可以找到main()方法,从而来运行javac程序
static:表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候main()方法也随着加载到内存中去
void:main()方法是不需要返回值的
main:约定俗成,规定的
String[] args:从控制台接收参数

3.
在java中public void与public static void有什么区别 ?
public void 修饰是非静态方法,该类方法属于对象,在对象初始化(new Object())后才能被调用;
public static void 修饰是静态方法,属于类,使用类名.方法名直接调用。

非静态方法之间可以互相调用,非静态方法也可以调用静态方法;但是静态方法不可以直接调用(未初始化的)非静态方法。由于 public static void main 作静态方法,所以遵循这个原则。

4.分配一个新的字符串,将参数中的字符数组元素全部变为字符串
char a[] = {'H','e','l','l','0'}; //字符数组元素
String sChar = new String(a);  //输出 “Hello”
a[1] = 's';  //对sChar 无影响

5.字符串拼接
public static void main(String[] args) {
    int[] no = new int[] { 501, 101, 204, 102, 334 }; // 定义学号数组
    String[] names = new String[] { "张城", "刘丽丽", "李国旺", "孟红霞", "贺宁" }; // 定义姓名数组
    String[] classes = new String[] { "数学", "语文", "数学", "英语", "英语" }; // 定义课程数组
    System.out.println("本次考试学生信息如下:");
    // 循环遍历数组,连接字符串
    for (int i = 0; i < no.length; i++) {
        System.out.println("学号:" + no[i] + "|姓名:" + names[i] + "|课程:" + classes[i] + "|班级:" + "初二(三)班");
    }
}

6.字符串比较时,曾经介绍过两种比较方法,分别是==运算符和 equals() 方法,==运算符是比较两个引用变量是否指向同一个实例,equals() 方法是比较两个对象的内容是否相等,通常字符串的比较只是关心内容是否相等

7.int[] prices = new int[5]; // 声明数组并分配空间    // 数据类型[] 数组名;

int[] scores = { 78, 93, 97, 84, 63 }; // 定义一个数组

String[] subjects = new String[5];// 定义一个长度为5的字符串数组,保存考试科目信息

for (String str : [1,2,3,4])  //类似于for in

StringBuffer

8.Java的学习主线可以用两个概念来进行总结,一个是“类(class)”,另一个是“接口(interface)”
掌握Java编程的过程,类的设计、对象的创建、方法的调用
学习Java编程一定离不开实验和总结

9.  // 使用new关键字创建对象
     Student student1 = new Student("小刘",22);
10.对象名.属性(成员变量)    // 访问对象的属性
对象名.成员方法名()    // 访问对象的方法
11.
final 修饰的变量不可被改变,一旦获得了初始值,该 final 变量的值就不能被重新赋值。
12.强制转换
 Iterator it = objs.iterator();
        while (it.hasNext()) {
            // it.next()方法返回的数据类型是Object类型,因此需要强制类型转换
            String obj = (String) it.next();
}

13.Map<Integer, Book> books = new HashMap<Integer, Book>(); // 定义泛型 Map 集合
 List<Book> bookList = new ArrayList<Book>(); // 定义泛型的 List 集合

14.this.allStudents = new ArrayList<Student>();// 实例化List集合
15.@Override 注解是用来指定方法重写的,只能修饰方法并且只能用于方法重写,不能修饰其它的元素。它可以强制一个子类必须重写父类方法或者实现接口的方法。
16.@value 注入单个属性

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值