public class Main { /* * 面向对象的基本概念,包括: 类 实例 方法 面向对象的实现方式,包括: 继承 多态 Java语言本身提供的机制,包括: package classpath jar 以及Java标准库提供的核心类,包括: 字符串 包装类型 JavaBean 枚举 常用工具类 * */ public static void main(String[] args){ Person p = new Person(); p.setName("Scout"); /* p.age = "2"; p.sex ="男";*/ System.out.println(p.getName()); boolean bool = p instanceof Person ? true :false;//判断一个类是不是一个对象的实例 System.out.println(bool); } } class Person { /* public String name; public String age; public String sex; *///如果直接用public暴露给外部的话会破坏封装性,造成逻辑混乱所以用private来进行修饰,用方法来进行赋值和传递值 private String name; private String age; private String sex; public void setName(String name) { this.name = name; } public String getName() { System.out.println(this); return this.name; } //this是一直指向当前实例.通过this.字段可以直接访问到字段如果局部变量与字段重名,就必须用this了,一般为了减少命名都会 //使用到this.字段,然后set和get的名字和字段同名 //方法参数 方法参数可以定义0到理论无限的参数,传递时必须严格按照参数的类型传递 //可变参数 可以参数就是 类型... /* * public string setName(String... name){ * } *p.setName("张三“,"张四","张五“) * 完全可以把可以变阐述改为String []类型 * public string setName(String... name){ * } * p.setName(new String[]{"张三”,"张四“,"张五“}) 可变参数调用方可以传入null但是可变参数可以保证无法传入,接收的实际值是空数组而不是null * */ /* * 方法重载:同名方法不同参数个数和参数类型(overload) * 目的:共同目的的方法同名有利于记住调用起来更方便 *构造方法:Person p = new Person() *想要在new一个对象的时候直接传递传输就需要构造函数,类自己有一个空的默认构造函数,如果定义了就没有了 * 想要同时存在就都要自己定义 *public class Person{ * Protected String name ; * Protecter String sex ; * public Person(){//默认构造函数 * } * public class Person(name,sex){ * this.name = name; * thsi.sex = sex; * } * 构造函数也可以进行重载 * } * * */ }
java自学知识点笔记:面向对象1
最新推荐文章于 2024-05-05 04:03:15 发布