`
Liang_Hong
  • 浏览: 6776 次
社区版块
存档分类
最新评论

Java学习之,总结乎——类和对象

阅读更多
public class LanjieStudent {
private  String name1="老师";
private  String name2="蓝杰学员";
private  String net="http://www.iteye.com";

public void study(){
System.out.println(name1+"说:"+name2+"要经常访问"+net+",并在上面写博客!");
}
}
public class Manager {
public static void main(String[] args) {
LanjieStudent lan=new LanjieStudent();
        lan.study();
}
}


通过写博客的方法,把所学习的知识按照自己的思路进行总结,这很好。

在蓝杰学习已经一周了,蓝杰的课程很重视实践,是实践中贯穿着理论的讲解,所以刚开始听课感觉似懂非懂,并且课程进度很快,经过努力,终于明白一点了,以下便是:


1>、类和对象

Java是面向过程与面向对象的编程:

面向过程是指按步骤针对事件、问题描述,然后逐步解决。
面向对象体现的是产生行为的各对象之间的相互关系。

而类就是面向对象的一个核心机制。

类就好比一个模板,对象就是这个模具刻出来的产品。并且我们可以在类里面定义属性和方法,供生成的对象调用。

所以,类是具有相同属性和方法的一组对象的集合,是抽象出来的概念,而对象是这个抽象说明的类的一个具体情况。

定义类需要用calss关键字,如:
Public class 类名{}

创建对象需要使用这个对象所属的类并用new关键字来实例化。如
New 类名()



2>、管理权限public> protected > default > private

这是Java中的四类管理权限:
Public(公共访问权限)权限具有最大的权限,其可以修饰类以及类中的成员变量、函数。其修饰的类、成员、函数可以随便被其他类调用。
Protected(子类访问权限)不能修饰类,可以修饰类中的成员变量、函数。只能被其所在类的子类调用,且可以跨包使用。
Default(包访问权限),即默认类型(如果不添加权限修饰符)。不能跨包,只能被其类所在包中的其他类访问。
Private(类访问权限),只能修饰成员变量、函数,只能被当前类中访问。


3>、settter/getter方法

如果我们定义的成员变量是Private类型,这个时候在其他类中要调用,我们就得定义setter/getter方法:
Public void setN(String n){
  This.n=n;
}
/*N为变量名*/
Public String getN(){
return n;
}
之所以不直接定义成Public类型,很大程度上是为了方便权限的控制。


4>、方法的重载与构造器

Java中方法的重载需要满足以下几个条件:
(1)方法名一样;(2)方法在同一个类中;(3)方法的形参列表不同(个数、类型、顺序)

方法的重载的作用:
不用为了应对不同的参数类型或参数个数,而写多个函数。多个函数用同一个名字,但参数表不完全相同(大小写敏感),调用的时候,虽然方法名字相同,但根据参数表可以自动调用对应的函数。这样我们在调用的时候,就不需要记那么多的方法名称,而是知道了方法的功能就可以直接的给他传递不同的参数,编译器会明确的知道我们调用了哪一个方法。


public void study(){
System.out.println("学生都要自习!");
}
/*以下便是study 方法的重载*/
public void study(int time){                                        
System.out.println("学生正在上课,需要上课:"+time+"分钟!");
this.study(); /*study方法的调用*/
}


Java中构造器条件:
(1) 类中的构造函数名与类名一样;(2)构造函数没有返回值类型;(3) 构造函数也可以实现重载;(4) 在默认情况下,系统会给每一个类自动生成一个构造函数。但是如果人为的定义了构造函数的话,系统就不会自动生成构造函数了。

public Student(){
this("王五"); /*只能由构造器调用构造器,初始化name值*/
}
/*以下便是student类的重载*/
public Student(String name){
this.name=name;
}


构造器的作用:生成对象,并且我们可以对对象进行初始化。


5>、this关键字

This主要有两个用途:
1、 表示当前对象的引用,指代;特别是当函数参数名和成员变量同名时,用this进行区分,这是比较常用的一种情况。
public class Student{
String name;

Public Student(String name){
This.name=name           /* 这个this就是指代的student类中的st对象*/
}
}

String name =”未知”;
Student st=new String(name);  

2、 方法、构造器进行互相调用,
方法的调用格式为 this.方法名
构造器调用格式为 this(参数)

Public class student{

public student(){
This(“王五”)      /*调用第二个构造器,初始化name属性值*/
}
public student (String name){
This name=name;   /*指代对象*/
This(name,90);     /*调用第三个构造器,初始化name、score的值*/
}
public student (String name,int score)
this name=name;   /*指代对象*/
this score=score;    /*指代对象*/
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics