java学习笔记(面向对象、类的使用、方法的重载)

1.面向过程、面向对象   eg:人开门;把大象装进冰箱。

2.面向对象的编程关注于类的设计

3.变量:成员变量、局部变量。

4.方法:可以在方法内调用本类的其他方法,但不可以在里面定义新的方法。

5.面向对象编程的三条主线:

 ①类及类的构成部分:属性、方法、构造器代码块、内部类

②面向对象编程的特征:封装性、继承性、多态性(抽象性)。

③其他关键字:this、super、package、import、static、final、abstract、interface…

6.方法一般由对象调用。

7.类的初始化的内存解析:

①内存划分结构:

  栈(stack)——局部变量、对象的引用名、数组的引用名。

  堆(heap)——new出来的“东西”(如:对象的实体,数组的实体),含成员变量。

  方法区——含字符串常量(如:类中的方法、类名、包名)。

  静态域——声明为static的变量。


类的使用

package learning;

 

//测试类

public class TestPerson {

 

         publicstatic void main(String[] args) {

                   //TODO Auto-generated method stub

                   Personp = new Person();

                   p.study();

                   p.showAge();

                   p.addAge(2);

                   p.showAge();

                  

                   Personp1 = new Person();

                   p1.showAge();

 

         }

 

}

class Person{

         //属性

         Stringname;

         intage;

         intsex;

         //方法

         publicvoid study(){

                   System.out.println("studying");

         }

         publicvoid showAge(){

                   System.out.println(age);

         }

         publicint addAge(int i){

                   age+= i;

                   returnage;

         }

}


方法的重载的使用

package learning;

/*

 * 方法的重载(overload)

 * 要求:1.同一个类中2.方法名相同3.方法的参数列表不同(参数个数不同或参数类型不同)

 * 补充:方法的重载与返回值类型没有关系

 * */

public class TestOverload {

         //以下三个方法构成重载

         publicvoid mOL(int i){

                   System.out.println(i* i);

         }

        

         publicvoid mOL(int i,int j){

                   System.out.println(i* j);

         }

        

         publicvoid mOL(String str){

                   System.out.println(str);

         }

         //以下三个方法构成重载

         publicdouble max(double d1, double d2,double d3){

                   return(max(d1,d2) > d3)? max(d1,d2) : d3;

         }

         publicdouble max(double d1,double d2){

                   return(d1 > d2)? d1 : d2;

         }

         publicint max(int i,int j){

                   return(i > j)? i : j;

         }

 

         publicstatic void main(String[] args) {

                   //TODO Auto-generated method stub

                   TestOverloadt = new TestOverload();

                   t.mOL(12);

                   t.mOL("www.baidu.com");

                  

                   System.out.println(t.max(12,13));

                   System.out.println(t.max(12.1,32.4, 23.4));

 

         }

 

}

class OverLoad{

         //定义两个int型变量的和

         publicint getSum(int i,int j){

                   returni + j;

         }

         //定义三个int型变量的和

         publicint getSum(int i,int j,int k){

                   returni + j + k;

         }

         //定义两个double类型的数据的和

         publicdouble getSum(double d1,double d2){

                  return d1 + d2;

         }

         //定义三个double类型的数据的和

         publicvoid getSum(double d1,double d2,double d3){

                   System.out.println(d1+ d2 + d3);

         }

        

         publicvoid method1(String str,int i){

                  

         }

         publicvoid method1(int i,String str){

                  

         }

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值