【Java学习笔记】基础知识学习6【类的基础、方法,对象基础、包】
2013-07-20 21:31
791 查看
从现在开始,就进入了类/对象的研究
在java中,类(Class)的编辑中,会在第一行有类似“package sunsoft.testideas;”以package开头的一段内容。
这个package就是包。包的存在,是为了保证类的名字不重复。因为不同的人同时开发代码的时候,难免会出现多人使用相同的名字作为类名的情况。在这种条件下,我们使用类的时候,就会无法确定我需要使用的是哪个类。所以,引入了包。在每个包内,类的名字都不相同就可以了。这样,在多人联合编写程序的时候,只需要分配给每个人一个固定的包名称,就可以解决类的名字重复的问题了。
将自己写的类加入某个包的方法就是:
在类的代码所在的java文件中的第一行(或者说最前面几行)插入“package 包名”这种形式的语句。一般来讲,包的名字是在eclipse里面创建Class的时候,就可以通过对话框确定的。
在写自己的程序的时候,可以引用别的包中 别人已经写好的类。
一种比较繁琐的方法是:
java.util.Date date=new java.util.Date();
即输入类的完整路径(包.类名)来引用。
还有一种简便的方法:使用Import(导入)
Import java.util.Date; 这个是导入一个Date类;
或者:
Import java.util.*; 这个是导入 java.util 包中的所有的类。
但是,需要注意的是,这样导入的是 java.util 中的类,并不包括java.util的子包(子包指:一个包中的包)中的类。
java中的方法重载、权限修饰符(private,public,protected)都和Visual
C++的极为相似,可以参照学习,就不详细记录。
类中的方法,就相当于C,VB等面向过程或半面向对象的程序语言中的函数或过程
而方法的参数传递,也可以借用C等语言的函数的参数传递的知识来理解。显著的区别在于,C支持指针,因此可以在调动函数的时候,以传址的方法传递参数,使得调用的函数可以对实参的值进行改变。而,java,在参数的传递过程中,是采取的传址的方法。
以下的一段代码可以用来验证:
如果java默认支持传址的形式传输参数,则这里输出的a的值应该是13,而实际运行得出的结果是12。所以验证了上面所说的,java默认传值的猜想。在java中,对参数进行类似传址的操作需要通过引用(Reference)的方式来进行,我目前对引用的方法尚不熟悉,我会在研究透后另写文章记录经验。
构造函数,和VC++里面一样的,是用来在类的实例创建时对类的参数等等进行初始化,我写一个例子吧:
然后使用Person类的示例的代码如下:
在java中,类(Class)的编辑中,会在第一行有类似“package sunsoft.testideas;”以package开头的一段内容。
这个package就是包。包的存在,是为了保证类的名字不重复。因为不同的人同时开发代码的时候,难免会出现多人使用相同的名字作为类名的情况。在这种条件下,我们使用类的时候,就会无法确定我需要使用的是哪个类。所以,引入了包。在每个包内,类的名字都不相同就可以了。这样,在多人联合编写程序的时候,只需要分配给每个人一个固定的包名称,就可以解决类的名字重复的问题了。
将自己写的类加入某个包的方法就是:
在类的代码所在的java文件中的第一行(或者说最前面几行)插入“package 包名”这种形式的语句。一般来讲,包的名字是在eclipse里面创建Class的时候,就可以通过对话框确定的。
在写自己的程序的时候,可以引用别的包中 别人已经写好的类。
一种比较繁琐的方法是:
java.util.Date date=new java.util.Date();
即输入类的完整路径(包.类名)来引用。
还有一种简便的方法:使用Import(导入)
Import java.util.Date; 这个是导入一个Date类;
或者:
Import java.util.*; 这个是导入 java.util 包中的所有的类。
但是,需要注意的是,这样导入的是 java.util 中的类,并不包括java.util的子包(子包指:一个包中的包)中的类。
java中的方法重载、权限修饰符(private,public,protected)都和Visual
C++的极为相似,可以参照学习,就不详细记录。
类中的方法,就相当于C,VB等面向过程或半面向对象的程序语言中的函数或过程
而方法的参数传递,也可以借用C等语言的函数的参数传递的知识来理解。显著的区别在于,C支持指针,因此可以在调动函数的时候,以传址的方法传递参数,使得调用的函数可以对实参的值进行改变。而,java,在参数的传递过程中,是采取的传址的方法。
以下的一段代码可以用来验证:
package sunsoft.testideas; public class Ex_Agri { void AddNum(int s1,int s2){ s1=s1+s2; } void TestP(){ int a=12; int b=1; AddNum(a, b); T.O("加后,结果为:"+a); } }
如果java默认支持传址的形式传输参数,则这里输出的a的值应该是13,而实际运行得出的结果是12。所以验证了上面所说的,java默认传值的猜想。在java中,对参数进行类似传址的操作需要通过引用(Reference)的方式来进行,我目前对引用的方法尚不熟悉,我会在研究透后另写文章记录经验。
构造函数,和VC++里面一样的,是用来在类的实例创建时对类的参数等等进行初始化,我写一个例子吧:
package sunsoft.testideas; public class Ex_Person { private String sName; private String sSex; private int age; public void Say(String nWord){ System.out.println(sName+" says:"+nWord); } public Ex_Person(){ sName="David Sun"; sSex="Girl"; age=23; } public Ex_Person(String uName,String uSex,int uAge){ sName=uName; sSex=uSex; age=uAge; } public void Self_Description(){ Say("My Name is "+sName+" .I am a "+sSex+",and I am "+age+" years old."); } }
然后使用Person类的示例的代码如下:
package sunsoft.testideas; public class IdeaTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Ex_Person sunrui=new Ex_Person("Bill","boy",22); sunrui.Self_Description(); } }
相关文章推荐
- 【Java学习笔记】基础知识学习19【一个大文件的复制方法】
- 【java基础知识(学习笔记)】--方法的重载
- JAVA面向对象基础 对象 类 方法学习笔记
- JAVA面向对象基础 对象 类 方法学习笔记
- 黑马程序员---Objective-C基础学习---类、对象、方法相关知识笔记
- 【Java学习笔记】基础知识学习18【一个小文件的复制方法】
- 【java基础知识(学习笔记)】--方法的重载注意事项
- [学习笔记] Java核心技术 卷一:基础知识 对象与类、继承(二)
- 【Java学习笔记】基础知识学习3【基本循环方法技巧】
- 【java基础知识(学习笔记)】--方法中的参数传递
- 传智播客_张孝祥_Java基础4_面向对象下_学习笔记
- 学习笔记6—Java基础4_面向对象下b
- 【java基础知识(学习笔记)】--引用数据类型
- Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.6异常处理(4.6.1-4.6.3)
- 黑马程序员_java基础学习笔记04_面向对象
- java 学习笔记1-基础知识
- 【JavaWeb】JSP学习笔记(一)环境|目录|JSP基础语法|内置对象
- Java学习笔记:Java基础知识
- 黑马程序员--面向对象基础知识学习笔记
- Java基础知识强化之集合框架笔记69:Collections类之ArrayList存储自自定义对象并排序的案例