zoukankan      html  css  js  c++  java
  • 面向对象总结

    面向对象
    1.类和对象
    概念:对象是生活中的实例,类是一组具有相同属性,和行为的集合。
    区别:类是对象的抽象,对象是类的实例化。
    2.声明一个类:
    public class Person{
    //属性 (数据类型 变量名;)
    String name;

    //方法 (修饰符 返回值 方法名(参数列表){})
    public void info(){
    System.out.println("我叫"+name);
    }

    public int workTime(int workTime){
    return workTime;
    }

    }

    3.实例化一个类,构建一个对象
    类名 对象名 = null;
    对象名 = new 类名();
    Person p = null;
    p = new Person();

    类名 对象名 = new 类名();
    Person p = new Person();

    4.构造方法
    1》方法名要和类名完全相同
    2》没有返回类型
    public Person(String name){
    this.name = name;
    }
    3》当你没有显示声明一个带参构造方法,系统会默认提供一个无参构造方法、
    4》当你声明一个带参构造方法,系统不会再给你提供无参构造方法

    5.this关键字的作用 当前对象

    6.面向对象的三大特点:封装,继承,多态(方法的重载和重写)

    7.封装:(把属性私有化,对外提供get,set方法,get用来获取值,set用来赋值 )
    public class Person{
    //属性 (数据类型 变量名;)
    private String name;

    public String getName(){
    return name;
    }

    public void setName(String name){
    this.name = name;
    }

    //方法 (修饰符 返回值 方法名(参数列表){})
    public void info(){
    System.out.println("我叫"+name);
    }

    public int workTime(int workTime){
    return workTime;
    }

    }
    8.继承 : extends (子类可以继承父类的属性和方法,但构造方法不能继承)
    public class Student extends Person{}
    9.super关键字 用来解决父类提供了带参构造方法,子类报错的问题

    public class Student extends Person{
    public Student(String name){
    super(name);
    }

    }
    10.方法重载:同一个类中,方法名完全一致,参数列表(参数类型或者个数不同)

    public class Person{
    //属性 (数据类型 变量名;)
    private String name;

    public String getName(){
    return name;
    }

    public void setName(String name){
    this.name = name;
    }

    //方法 (修饰符 返回值 方法名(参数列表){})
    public void info(){
    System.out.println("我叫"+name);
    }

    public int info(int workTime){
    return workTime;
    }

    }
    11.方法重写:在继承关系中,子类重写父类方法,方法名,参数列表,返回值都要一致

    public class Student extends Person{
    private int score;
    public int getScore(){
    return score;
    }
    public void setScore(int score){
    this.score = score;
    }
    public void info(){
    System.out.println("我叫"+name+",成绩是"+score);
    }

    }

    12.final关键字 (不变)
    final修饰的变量叫常量,不可改变
    final修饰的方法不可被重写
    final修饰的类不能被继承

    13.static (静态的)
    static修饰的变量,方法或者代码块儿在类加载的时候只会加载一次
    通常声明一个常量 public static final String GUOJI = "中国";
    单例模式:饿汉式(必须要遵循的两个原则:声明私有化构造方法,2.提供公共的静态的方法获得该类的对象)
    public class SingLeton{
    private SingLeton(){

    }
    public static SingLeton singLeton = new SingLeton();

    public static SingLeton getInstence(){
    return singLeton ;
    }
    }
    14.包 com.qhit ctrl+shift+o(快捷方式)

    15.修饰符的权限
    public 本类中 本包中 不同的包中 项目中
    private 本类中
    protected 本类中 本包中 (继承关系的不同的包中)
    default 本类中 本包中

  • 相关阅读:
    软件测试经典面试题汇总测试…(转载)
    loadrunner录制时弹出invalid application path
    【转】性能测试知多少:性能分析与…(转载)
    loadrunner小知识累积(转载)
    selenium定位方法总结
    [testng]Cannot find class in classpath
    java工程名前有红色感叹号
    jenkins slave节点问题总结
    scrapy爬虫框架
    Python监听鼠标键盘事件
  • 原文地址:https://www.cnblogs.com/games-lol/p/7773572.html
Copyright © 2011-2022 走看看