黑马程序员Java培训和Android培训:面向对象
2011-07-25 10:24
330 查看
1.面向对象的三大特征: 封装(Encapsulation),继承(inheritance),多态(Polymorphism)
封装是指隐藏对象的属性和实现细节,仅仅对外公开接口。
2.this 的作用,个人认为this相当于一个针,可以指示函数,变量
3.使用final修饰的变量,也可以称为常量,一但被赋值,那么就不能改变其值.
4. == equals()的区别 相同的数据类型
== 不仅仅需要比较的2个成员之间的 值是相等的 而且还需要比较2个的物理地址是否一样
比较两个数组对象的内容是否相等,使用Arrays.equals(int[],int[])方法
equals()比较2个值是否相等 返回值为true和false
以下程序可以说明:
package Test;
public class Test1{
public static void main(String[] args)
{
String s1=new String("luokan");
String s2=new String("luokan");
String s3=s1;
System.out.println("第一次比较");
if(s1==s2)
System.out.println("s1=s2");
else
System.out.println("s1!=s2");
System.out.println("第二次比较");
if(s1.equals(s2))
System.out.println("s1=s2");
else
System.out.println("s1!=s2");
System.out.println("第三次比较");
if(s2==s3)
System.out.println("s3=s2");
else
System.out.println("s3!=s2");
}
}
运行结果:第一次比较
s1!=s2
第二次比较
s1=s2
第三次比较
s3!=s2
5垃圾回收过程分析 :finalize() 方法 System.gc的作用
gc 是garbge collect的简写 java系统会自动调用gc的功能
6.static 静态变量,如果一个变量是静态变量的话,那么在其他类之外用到这个静态变量就不需要再去实例一个类的对象来引用这个静态变量,而是可以直接引用这个静态变量
7.可变参数,可变参数只能出现在参数列表最后;...位于变量类型和变量名之间,当要调用可变参数时,系统会为可变参数创建一个数组,方法体中会以数组的形式访问可变参数
public static void main(String[] args)
{
int m=add(1,2,3,4,5,6,7,8,9,0);
System.out.println(m);
}
public static int add(int x,int...args)
{
int sum=0;
for(int i=0;i<args.length;i++)
{
sum+=args[i];
}
return sum;
}
}
8.overload 与 override的区别
override(重写)
1、方法名、参数、返回值相同。
2、子类方法不能缩小父类方法的访问权限。
3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。
4、存在于父类和子类之间。
5、方法被定义为final不能被重写。
overload(重载)
1、参数类型、个数、顺序至少有一个不相同。
2、不能重载只有返回值不同的方法名。
3、存在于父类和子类、同类中
封装是指隐藏对象的属性和实现细节,仅仅对外公开接口。
2.this 的作用,个人认为this相当于一个针,可以指示函数,变量
3.使用final修饰的变量,也可以称为常量,一但被赋值,那么就不能改变其值.
4. == equals()的区别 相同的数据类型
== 不仅仅需要比较的2个成员之间的 值是相等的 而且还需要比较2个的物理地址是否一样
比较两个数组对象的内容是否相等,使用Arrays.equals(int[],int[])方法
equals()比较2个值是否相等 返回值为true和false
以下程序可以说明:
package Test;
public class Test1{
public static void main(String[] args)
{
String s1=new String("luokan");
String s2=new String("luokan");
String s3=s1;
System.out.println("第一次比较");
if(s1==s2)
System.out.println("s1=s2");
else
System.out.println("s1!=s2");
System.out.println("第二次比较");
if(s1.equals(s2))
System.out.println("s1=s2");
else
System.out.println("s1!=s2");
System.out.println("第三次比较");
if(s2==s3)
System.out.println("s3=s2");
else
System.out.println("s3!=s2");
}
}
运行结果:第一次比较
s1!=s2
第二次比较
s1=s2
第三次比较
s3!=s2
5垃圾回收过程分析 :finalize() 方法 System.gc的作用
gc 是garbge collect的简写 java系统会自动调用gc的功能
6.static 静态变量,如果一个变量是静态变量的话,那么在其他类之外用到这个静态变量就不需要再去实例一个类的对象来引用这个静态变量,而是可以直接引用这个静态变量
7.可变参数,可变参数只能出现在参数列表最后;...位于变量类型和变量名之间,当要调用可变参数时,系统会为可变参数创建一个数组,方法体中会以数组的形式访问可变参数
public static void main(String[] args)
{
int m=add(1,2,3,4,5,6,7,8,9,0);
System.out.println(m);
}
public static int add(int x,int...args)
{
int sum=0;
for(int i=0;i<args.length;i++)
{
sum+=args[i];
}
return sum;
}
}
8.overload 与 override的区别
override(重写)
1、方法名、参数、返回值相同。
2、子类方法不能缩小父类方法的访问权限。
3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。
4、存在于父类和子类之间。
5、方法被定义为final不能被重写。
overload(重载)
1、参数类型、个数、顺序至少有一个不相同。
2、不能重载只有返回值不同的方法名。
3、存在于父类和子类、同类中
相关文章推荐
- 黑马程序员Java培训、Android培训-Java 学习过程记录_面向对象下3
- 黑马程序员Java培训、Android培训-Java 学习过程记录_面向对象下
- 黑马程序员Java培训、Android培训-Java 学习过程记录_面向对象下2
- 黑马程序员Java培训、Android培训-Java 学习过程记录_面向对象上2
- 黑马程序员Java培训、Android培训-Java 学习过程记录_多线程3
- 黑马程序员Java培训、Android培训-Java 学习过程记录_JavaAPI-1
- 黑马程序员Java培训和Android培训:集合(Map)
- 黑马程序员Java培训、Android培训-Java 学习过程记录_JavaAPI
- 黑马程序员Java培训、Android培训_Java 学习过程记录_开发前奏
- 黑马程序员Java培训和Android培训:多线程
- 黑马程序员Java培训和Android培训:I/O
- 黑马程序员Java培训、Android培训_第8讲GUI/图形用户界面-1
- 黑马程序员Java培训和Android培训:枚举
- 黑马程序员Java培训、Android培训-Java 学习过程记录_语言基础3
- 黑马程序员Java培训和Android培训_IO(一)
- 黑马程序员Java培训、Android培训_第8讲GUI/图形用户界面-3
- 黑马程序员Java培训、Android培训-Java 学习过程记录_多线程
- 黑马程序员Java培训和Android培训:培训前奏
- 黑马程序员Java培训和Android培训_IO(二)
- 黑马程序员Java培训、Android培训_第8讲GUI/图形用户界面-5