Java语言是通过不同的JVM 跨平台运行在各种操作平台上。通过进一步学习也了解了JVM:java虚拟机,java代码都是运行在java虚拟机上; JRE和JDKJVM(Java Virtual Machine),Java虚拟机 JRE(Java Runtime Environment),Java运行环境,包含了JVM和Java的核心类库(Java API) JDK(Java Development Kit)称为Java开发工具,包含了JRE和开发工具 总结:我们只需安装JDK即可,它包含了java的运行环境和虚拟机。
编写了第一个经典程序“hello Word”。接下来是学习构成Java语言的基础知识,注释、关键字、常量、数据类型、变量、标识符和数据类型转换等。这些基础知识是最重要的,只有基础牢固才有可能对后面的学习有更加深刻的认识!
接下来学习的是运算符和语言结构:顺序结构、分支结构(if、switch)、循环结构(for、while、do...while)。
关于分支结构,使用最广泛的语句是if语句,但当判断固定个数的值的时候建议使用switch。
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default:
语句体2;
}
知识点:
:break是可以省略的,省略后会穿透下面的case向下执行,直到遇到了break或者整体结束为止;
:switch 后面的小括号中的变量应该是byte,char,short,int,String,enum四种类型中的一种;
3):switch可以没有default,但是一般都会加上。
循环结构如果需要定义变量控制循环次数。建议使用for。因为for循环完毕,变量在内存中释放。
break:作用于switch ,和循环语句,用于跳出,或者称为结束。break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
continue:只作用于循环结构,继续循环用的。可以结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。
关于Java的学习,一定要养成良好的习惯,写括号时要成对,字母大小写和标点中英文要区分,单词拼写要准确。在学习的过程中一定要动手做、试着写代码,知识只有自己能够了解了做到了才真正属于自己。 一个标准类的构成: 1. 私有的属性 2.属性的公共get/set方法 3.行为,自定义的方法 4.构造函数(满参,无参) 封装思想: 1. 封装概述 是面向对象三大特征之一(封装,继承,多态)是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界是无法直接操作的 2. 封装原则 将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问成员变量private,提供对应的getXxx()/setXxx()方法 3. 封装好处通过方法来控制成员变量的操作,提高了代码的安全性把代码用方法进行封装,提高了代码的复用性 构造方法的注意事项: 构造方法的创建:首先如果我们没有手动书写构造方法,系统默认提供一个无参构造,如果你写了一个有参构造,系统默认提供的无参构造将会失效,如果我非要再使用无参,我们必须手动书写一个无参构造. 构造方法的重载:可以重载,可以书写多个参数列表不同的构造函数 推荐的使用方式:无参+满参 · 什么是API API(Application Programming Interface) :应用程序编程接口 什么是API: 指的就是 JDK 中提供的各种功能的 Java类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用。 String类的特点· 在java.lang包下,使用时不需要导包 · 一旦创建,长度和内容就不能更改,可以共享 · 效果上相当于字符数组,底层是字节数组. · 只要被双引号引起来的内容就是字符串,也就是String类的实例(对象),就可以使用String类的方法 用户登录案例: 已知用户名和密码,请用程序实现模拟用户登录。总共给三次机会,登录之后,给出相应的提示 2.6.2代码实现
public class Demo6 { //psvm 主方法 public static void main(String[] args) { //已经用户名和密码 String username = "geyi"; String password="123456"; //建议写在循环外面 Scanner sc = new Scanner(System.in); //我只想给用户三次机会输入 for (int i = 0; i < 3; i++) { System.out.println("请输入用户名"); String user = sc.nextLine(); System.out.println("请输入密码"); String pwd = sc.nextLine(); if(username.equals(user)&&password.equals(pwd)){ System.out.println("登录成功"); break; }else{ if((2-i)==0){ System.out.println("您的账号已经被冻结了"); }else{ System.out.println("您输入的用户名或者密码错误"); System.out.println("您还有"+(2-i)+"次机会"); } } } }}StringBuilder有一个功能完全一模一样的兄弟叫StringBuffer.构造函数,调用方法,所有的功能都是一样的.可以互相替代使用. StringBuilder他是线程不安全的,但是效率高. StringBuffer他是线程安全,但是效率低. 验证码产生: package com.itheima_2;
import java.util.Random;
import java.util.Scanner;
//[48~58) 0~9
public class Demo8 {
public static void main(String[] args) {
char[] arr = new char[4];
Random random = new Random();
for (int i = 0; i < arr.length; i++) {
while (true) {
int next = random.nextInt(75) + 48;
if (next>=48 && next<=122) {
if (next >= 97 || next < 58 ||(next >= 65 && next <= 90) ) {
arr = (char) next;
break;
}
}
}
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr);
}
System.out.println();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入验证码");
String ab = scanner.nextLine();
String as = new String(arr);
if (as.equalsIgnoreCase(ab)) {
System.out.println("相同");
} else {
System.out.println("不同");
}
}
} 集合file:///C:\Users\liu\AppData\Local\Temp\msohtmlclip1\01\clip_image002.jpg .1ArrayList类概述· 什么是集合 什么是集合:他就是一个容器,他的底层是一个可变的数组.你也可以把他理解为可变的数组. 然后他可以存储不同的数据类型 · ArrayList集合的特点 长度是可变的,内容也是可变的. 索引是从0开始,到长度减一结束 集合有顺序的 · 泛型的使用 <>:集合一开始定义的时候,功能非常强大,可以在一个集合里面存储任意的引用数据类型.但是随着社会的发展,我们发现,一个集合应该只存一个类型,会方便一点.jdk7之后想了个办法,起了个叫泛型的东西,就说,以后加泛型,语法就规定只能存泛型的类型. !!! 增删改查 1.2ArrayList类常用方法【应用】1.2.1构造方法 方法名
public ArrayList() 1.2.2成员方法 方法名
public boolean remove(Object o)
public E remove(int index)
public E set(int index,E element)
public E get(int index)
public int size()
public boolean add(E e)
public void add(int index,E element) |