JavaSE基础 (九)

面向对象的编程思想

类——–抽象的 属性(特征)和方法(行为)

对象—–具体的

描述一个类

属性
权限修饰符  {特征修饰符}  数据类型  属性名字  {=值}
方法
权限修饰符  {特征修饰符}  返回值类型 方法名字(参数列表)  {抛出异常} {{方法体}};

创建一个对象

new  
对象     调用属性   存值/取值
对象.方法  调用方法   执行一次  (存储 执行)

类的加载

对象的创建
属性及方法的存储
方法的执行
方法执行的过程中  参数返回值的传递{基本数据类型  引用数据类型的区别}

方法的重载 overloard

1.概念:一个类中的一个一组方法  相同的方法名字 不同的参数列表  构成了方法的重载
参数的不同体现在  参数的个数 参数的类型 参数的顺序 三个方面
2.作用为了便于记忆和调用 使得方法调用的时候更加的灵活
3.自己也可以设计方法的重载
  调用的时候 先通过方法的名字来定位
  名字一致 通过参数列表的数据类型来定位
  方法返回值  修饰符 ---- 与方法重载无关
4.JDK1.5之后的  新写法 动态参数列表 ... 
  参数类型固定  参数的个数可以动态  0-n
  使用起来类似于数组的使用 length index
  int...x    int[][] x
  动态参数列表的方法   对应匹配的数组类型的方法不能构成重载(本质上是一样的)
  动态参数列表在方法的参数中只能存一份  且放置在参数的末尾 

构造方法 —–做事情

1.作用:只有一个  构建(构造)当前类的对象
2.写法:   权限修饰符  与类名一致的方法名 (参数列表){抛出异常}{方法体}
3.用法  通过new关键字调用
4.特点:
      (1)每个类都有构造方法:若自己的类中没有定义系统会默认提供一个无参的构造方法,若在类中定义了构造方法,则默认无参的狗造方法被覆盖
      (2)构造方法存值方法重载
5.每个类都提供一个构造方法  在创建对象的时候想做一些事情可以用构造方法

程序块 (代码块)

1.作用:跟普通方法一样 做事情的
2.写法:可以认为程序块是一个 没有修饰符 没有参数 没有返回值 没有名字的特殊方法{
}
3.用法:块需要调用才执行 我们自己调用不到(没有名字)
每次我们调用构造方法之前系统就会调用一次程序块(让他执行一遍)
4.特点:没有什么重载的概念 但可以在类中定义多个程序块
5.可以在里面写一些程序 我想要在创建对象之前执行

this关键字的使用

1.是一个关键字  代替某一个对象 (当前调用属性或方法时的那个对象)
2.this 既然指代一个对象
  this 可以调用 属性 方法
  this 可以调用构造方法  通过this();省略了构造方法的名字(必须与类名一致) 必须放在程序第一行
  一般方法不能调用构造方法

Scanner类

              1.导包               java.util
              2.创建对象         Scanner input = new Scanner(System.in);
              3.做事情          int value = input.nextInt();
                                String value = input.nextLine();
            -------------------------------------------------------------------------- 
            nextInt(nextFloat nextByte)next nextLine
1.读取方式上  大家都以回车符作为结束符号
          除了nextLine以外其余方法都不读取回车符
2.读取的返回结果来讲    nextInt--->int   nextFloat----float  nextLine---String  next--string
            next 方法看到回车或空格都认为结束 
              输入  abc def  g
              输出  abc
             nextLine 只认回车是结束符
              输入 abc def g
              输出 abc def g

利用包装类做string与基本类型的转化问题

int value = Interger.parseInt("");