一、Object类
Object:Class Object是类Object结构的根。 每个Class都有Object作为超类。 所有对象(包括数组)都实现了这个类的方法。
成员方法:
public int hashCode() 用来生成对象的唯一哈希码(hash code),它是用来快速比较两个对象是否相等的
public final Class getClass() 获取当前对象的类对象
public String toString() 用于返回对象的字符串表示形式
public boolean equals(Object obj) 默认比较的是地址值
protected void finalize() 垃圾回收的
protected Object clone() 浅拷贝
克隆(拷贝): 浅拷贝:只是将对象整体复制一份,内部的引用地址共享一份 深拷贝:所有的都复制一份
package com.shujia.day08.ketang; import java.util.Objects; /* Cloneable中并没有什么方法和常量,只是作为允许克隆的标记,像这样的接口叫做标记接口 克隆(拷贝): 浅拷贝:只是将对象整体复制一份,内部的引用地址共享一份 深拷贝:所有的都复制一份 */ class Demo{ } class Dog implements Cloneable{ String name; int age; Demo demo; public Dog() { } public Dog(String name, int age,Demo demo) { this.name = name; this.age = age; this.demo = demo; } @Override public String toString() { return "Dog{" + "name='" + name + '\'' + ", age=" + age + ", demo=" + demo + '}'; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Dog dog = (Dog) o; return age == dog.age && Objects.equals(name, dog.name); } @Override protected Object clone() throws CloneNotSupportedException { return super.clone(); } } public class ObjectDemo2 { public static void main(String[] args) throws Exception { Demo demo = new Demo(); Dog d1 = new Dog("小黑", 3,demo); System.out.println(d1); // Dog d2 = new Dog("小黑", 3); // System.out.println(d1.equals(d2)); // // String s1 = new String("你好"); // String s2 = new String("你好"); // System.out.println(s1.equals(s2)); Object o = d1.clone(); System.out.println(o); System.out.println(d1==o); } }
二、Scanner类
概述:是jdk1.5之后出现的键盘录入
使用Scanner类可以实现以下功能:
1. 从键盘读取输入:可以使用Scanner类的构造方法创建一个与标准输入流(System.in)关联的Scanner对象,然后使用next()、nextInt()、nextDouble()等方法读取用户输入的字符串、整数或浮点数。
2. 从文件读取输入:可以使用Scanner类的构造方法创建一个与指定文件关联的Scanner对象,然后使用相应的方法读取文件中的内容。
3. 从字符串读取输入:通过传递一个字符串给Scanner类的构造方法,可以创建一个与该字符串关联的Scanner对象,然后使用相应的方法读取字符串中的内容
下面是一些常用的Scanner类方法:
- next(): 读取并返回一个输入的字符串。
- nextInt(): 读取并返回一个输入的整数。
- nextDouble(): 读取并返回一个输入的浮点数。
- nextLine(): 读取并返回一行输入的字符串。可以接收换行符
- hasNext(): 判断是否还有下一个输入。
- close(): 关闭Scanner对象。
package com.shujia.day08.ketang; import java.util.Scanner; /* jdk1.5之后出现的键盘录入的类Scanner */ public class ScannerDemo1 { public static void main(String[] args) { //public Scanner(InputStream source) Scanner sc = new Scanner(System.in); //接收整数 // if(sc.hasNextInt()){ // int i = sc.nextInt(); // System.out.println(i); // }else { // System.out.println("您输入的内容不是一个整数"); // } System.out.println("请输入一个整数:"); int i = sc.nextInt(); System.out.println(i+"==========="); System.out.println("请输入您要输入的字符串:"); String s = sc.next(); // String s = sc.nextLine(); // 可以接收换行符 System.out.println(s+"-----------"); } }
三、修饰符
类及其成员的修饰符组合:
权限修饰符:public protected 默认的 private
静态修饰符:static
抽象修饰符:abstract
最终修饰符:final
类:
权限修饰符:public 默认的
抽象修饰符:abstract
最终修饰符:final
成员变量:
权限修饰符:public protected 默认的 private
静态修饰符:static
最终修饰符:final
构造方法:
权限修饰符:public protected 默认的 private
成员方法:
权限修饰符:public protected 默认的 private
静态修饰符:static
抽象修饰符:abstract
最终修饰符:final
常见的修饰符组合:
public static
public static final
public abstract
标签:Object,Java,Scanner,修饰符,System,public,String From: https://www.cnblogs.com/SIKE231310/p/17804119.html