10.面向对象-封装
10.1 知识点
面向对象回顾
概念:
万物皆对象
用程序来抽象(形容)对象
用面向对象的思想来编程
面向对象三大特性
封装、继承、多态
注意:
面向对象是一种编程范式
面向对象编程语言的编程思想和使用几乎是一致的
使用C#中的面向对象编程思想去写Java即可
Java中也是通过class类去封装对象的
Java中类的封装
Java中的类声明和使用和C#中基本一模一样
声明
class 类名
{
// 特征——成员变量
// 行为——成员方法
// 构造函数
// finalize函数
// 静态函数
}
注意:Java中没有C#中的
- 成员属性(有类似自动生成的get、set方法)
- 析构函数(有类似的finalize函数)
- 索引器
- 运算符重载
public class Lesson10_Person
{
// 静态成员
// 静态变量
public static int testStaticI;
public static void test()
{
}
// 成员变量
public String name = "韬老狮";
public String getSecret()
{
return secret;
}
private String secret = "秘密";
protected int age = 18;
public Lesson10_Person girlFriend;
public Lesson10_Person[] boyFriend;
public E_Sex sex = E_Sex.Man;
// 成员方法
public void Speak(String str)
{
System.out.println(str);
}
// 构造函数
public Lesson10_Person()
{
}
// 如果声明了有参构造函数 那么默认的无参构造函数就没有了
// 如果想要保留 需要自己实现
public Lesson10_Person(String name)
{
this.name = name;
}
// 当对象变成垃圾 然后垃圾回收时会调用该函数
// 下一次垃圾回收时 才会回收该对象
protected void finalize()
{
System.out.println("回收");
}
public enum E_Sex
{
Man, Woman,
}
}
Lesson10_Person person = new Lesson10_Person();
person = null;
System.gc();//回收
Lesson10_Person.test();
总结
Java中类的封装规则和C#基本一致
相对C#来说还少了不少功能,使用起来更加简单
10.2 知识点代码
Lesson10_Person
public class Lesson10_Person
{
//静态成员
//静态变量
public static int testStaticI;
public static void test()
{
}
//成员变量
public String name = "韬老狮";
public String getSecret()
{
return secret;
}
private String secret = "秘密";
protected int age = 18;
public Lesson10_Person girlFriend;
public Lesson10_Person[] boyFriend;
public E_Sex sex = E_Sex.Man;
//成员方法
public void Speak(String str)
{
System.out.println(str);
}
//构造函数
public Lesson10_Person()
{
}
//如果声明了有参构造函数 那么默认的无参构造函数就没有了
//如果想要保留 需要自己实现
public Lesson10_Person(String name)
{
this.name = name;
}
//当对象变成垃圾 然后垃圾回收时会调用该函数
//下一次垃圾回收时 才会回收该对象
protected void finalize()
{
System.out.println("回收");
}
public enum E_Sex
{
Man, Woman,
}
}
Lesson10_面向对象_封装
public class Lesson10_面向对象_封装
{
public static void main(String[] args)
{
//知识点1:面向对象回顾
//概念:
//万物皆对象
//用程序来抽象(形容)对象
//用面向对象的思想来编程
//面向对象三大特性
//封装、继承、多态
// 注意:
// 面向对象是一种编程范式
// 面向对象编程语言的编程思想和使用几乎是一致的
// 使用C#中的面向对象编程思想去写Java即可
// Java中也是通过class类去封装对象的
//知识点2:Java中类的封装
//Java中的类声明和使用和C#中基本一模一样
//声明
//class 类名
//{
// //特征——成员变量
// //行为——成员方法
// //构造函数
// //finalize函数
// //静态函数
//}
//注意:Java中没有C#中的
//1.成员属性(有类似自动生成的get、set方法)
//2.析构函数(有类似的finalize函数)
//3.索引器
//4.运算符重载
Lesson10_Person person = new Lesson10_Person();
person = null;
System.gc();//回收
Lesson10_Person.test();
//总结
//Java中类的封装规则和C#基本一致
//相对C#来说还少了不少功能,使用起来更加简单
}
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com