/**
* 常用类:
* 1)内部类(在类的内部定义一个完整的类):
* 成员内部类、静态内部类、局部内部类、匿名内部类
*
* 2)Object类:
* 根类,所有类的直接或间接父类,在继承链的最顶端
* 任何类在没有书写继承(extends)时,都默认继承Object类
* Object:作为类型可以储存任何对象;作为参数,可以接收任何对象;作为返回值,可以返回任何对象
*
* 3》包装类:
* 基本数据类型对应的引用数据类型
* int : Integer
* char : Character
*/
//1、成员内部类
1 class Dest{
2 private String name= "zzx" ;
3 class Eat{
4 public void cat() {
5 System.out.println(name);
6 }
7 }
8 public void Eat() {
9 System.out.println(name);
10 }
11 }
//2、静态内部类
1 class Totest{
2 static String name = "xm";
3 public static class San{
4 public void cat1() {
5 System.out.println(name);
6 }
7 }
8 }
//3、局部内部类
1 class Wact{
2 public static class San{
3 String name = "qq";
4 public void cat1() {
5 System.out.println(name);
6 }
7 }
8 }
//4、匿名内部类
1 public class InsideTest {
2 public static void main(String[] args) {
3 Dest a = new Dest() {
4 @Override
5 public void Eat() {
6 System.out.println("猪猪侠...");
7 }
8 };
9 a.Eat();
10 }
11 }
/**
* hashCode:返回该对象十进制的哈希码值
* equals:比较两个对象地址是否相等
* hashCode的重写和equals重写带两个参数
*/
1 class Enter{
2 private String name;
3
4 public Enter() {}
5
6 public Enter(String name) {
7 this.name = name;
8 }
9 @Override
10 public boolean equals(Object obj) {
11 Enter ent=(Enter)obj;
12 return this.name.equals(ent.name);
13 }
14 }
15 class EquTest {
16 public static void main(String[] args) {
17 //equals重写带两个参数
18 Enter ent1= new Enter("男");
19 Enter ent2= new Enter("男");
20 System.out.println(ent1.equals(ent2));
21
22 //hashCode的重写
23 System.out.println(ent1.hashCode());
24 System.out.println(ent1.hashCode());
25 }
26 }
//储存
1 class Emp {
2 String name;
3 String age;
4 String sex;
5 String account;
6 String pwd;
7 }
8 class ScnnerTest{
9 public static void main(String[] args) {
10 Scanner scan = new Scanner(System.in);
11 Emp emp =new Emp();
12 System.out.print("姓名:");
13 emp.name = scan.next();
14 System.out.print("年龄:");
15 emp.age = scan.next();
16 System.out.print("性别:");
17 emp.sex = scan.next();
18 System.out.print("账户:");
19 emp.account = scan.next();
20 if (emp.account.contains("@")||emp.account.contains("#")||emp.account.contains("$")||emp.account.contains("%")) {
21 System.out.println("您输入的账户有误,请重新输入!");
22 }else {
23 System.out.print("密码:");
24 emp.pwd = scan.next();
25 if(emp.account.length()<6||emp.pwd.length()<6) {
26 System.out.println("您输入的账户或密码有误,请重新输入!");
27 }
28 }
29 }
30 }