Java类、属性、方法、构造方法、块、内部类的基本概念
类
概念:类相当于一个模板,里面定义了多个对象共同的属性和方法
基本结构:属性、方法、构造方法、块、内部类
声明形式:【访问权限修饰符】【修饰符】 class 类名 { 类体 }
属性
概念:存放对象的数据,类里面的属性又叫成员变量,方法里面的属性叫做局部变量或者临时变量
声明形式:【访问权限修饰符】【修饰符】数据类型 属性名【=初值】
方法
概念:也称为函数,即对象的行为、定义在类中具有特定功能的一段独立的小程序
声明形式:【访问权限修饰符】【修饰符】返回值的数据类型 方法名(形式参数类型 形式参数) { 执行语句; return 返回值; }
方法的各部分解析
访问权限修饰符:控制方法和类被调用的范围
修饰符:包括static/final/abstract/synchronized
返回值类型:方法运行后的返回结果的数据类型,如果没有返回值使用void。
形式参数类型:即数据类型
形式参数:就是一个变量,用于存储调用方法时传递给方法的实际参数
return:用于结束方法
返回值:该方法执行后的结果,该结果会返回给调用者。
特点:方法分静态方法和非静态方法,可以使用修饰符;静态方法可用类名直接调用,非静态方法要用对象调用;
返回值可有可无,如果没有声明时要加void;方法名最好不跟类名一样;对象调用时才执行;可以被多次调用;
注意:方法只有被调用才会被执行;方法中可以调用方法;不可以在方法内部定义方法
构造方法
作用:要想使用Java类,必须创建类的对象,即对类进行实例化。而创建对象就必须使用构造方法
声明形式:【访问权限修饰符】类名(形式参数类型 形式参数){方法体}
特点:构造方法是用在实例化对象的时候调用的;不用定义返回值,连void都没有;不可以写return语句;方法名必须和类名相同;
不能使用任何修饰符;在创建的时候就给对象初始化;一个对象建立构造方法只能运行一次;
注意:任何一个类都默认有一个无参的构造方法,即使类中没有声明也可以直接使用;当在类中自定义构造方法之后,默认的无参构造方法即失效
内部类
概念:在类的内部定义的类
特点:不能在方法内部定义;内部类可以直接调用外部类的属性;往往在GUI编程中使用较多
块
概念:块在类中声明,类似一个没有方法声明的方法体
实例块{}:每次调用构造方法前自动调用
静态块static{}:类加载时被调用一次,与是否创建对象无关
代码示例
package summary1; class Class //类
{
class InClass //内部类:写在类里面
{
String name; //属性
InClass() {} //构造方法(方法名和类名相同):创建一个对象时需要的方法
void Do()
{} //方法(函数):可以做的事情;返回值为void
}
static {} //静态块:只有在加载主程序的时候执行;修饰符为static
{} //块:每次调用方法的时候都会执行 public static void main(String[] args) //主函数:一个类里面只能有一个主函数
{
System.out.println("Hello World !");
/* 使用public权限修饰符、static修饰符、返回值为void
* 方法名:main(主方法)、形式参数类型String[]数组、形式参数args
* 方法体为打印输出Hello World !
*/
}
}
Java类、属性、方法、构造方法、块、内部类的基本概念的更多相关文章
- oracle调用JAVA类的方法
导入jar包 在oracle中导入需要的jar包,我们把编辑好的java类打成jar包,直接在oarcle里面写简单的调用就可以了, 1.操作系统需要拥有支持loadjava命令的jdk. 2.加 ...
- JAVA类的创建: 创建JAVA的类 ,JAVA的字段,JAVA类的方法
1. 创建Java的类 如果说Java的一切都是对象,那么类型就是决定了某一类对象的外观与行为.可是类型的关键字不是type,而是class,创建一个新的类型要用下面的代码: 1 2 3 class ...
- 如何在Mybatis的xml文件调用java类的方法
在mybatis的映射xml文件调用java类的方法:使用的是OGNL表达式,表达式格式为:${@prefix@methodName(传递参数名称)} 1.如下代码所示:方法必须为静态方法:以下我只是 ...
- java 类、方法、代码块修饰式关键字总结
super 关键字 this和super的区别 访问成员的区别 this关键字 this特点 this使用场景 static关键字 例子 访问权限修饰符 特点 总结: 四个修饰符的特点 访问权限修饰符 ...
- Java基础语法04面向对象上-类-属性-方法-可变参数-重载-递归-对象数组
类 面向对象是一种思想,一般指将事务的属性与方法抽出总结为模板(类/class),处理事务时通过类创建/new出对象由对象的功能/方法去完成所要计算处理的事情. 面向过程:POP:以过程,步骤为主,考 ...
- Java类、方法、属性等
java是面向对象的编程语言 Object,就是指面向对象的对象,对象就是类的具体实例. 在java里,对象是类的一个具体实例.就像:人,指一个类.张三.李四.王五等则是一个个具体的实例,也就是jav ...
- java类 对象 和构造方法
github地址:https://github.com/lily1010/java_learn/tree/master/dog java中对象和类 java中万物皆对象,比如说动物,里面有猫,狗,鱼等 ...
- [转]java类 对象 和构造方法
github地址:https://github.com/lily1010/java_learn/tree/master/dog java中对象和类 java中万物皆对象,比如说动物,里面有猫,狗,鱼等 ...
- Java类成员之代码块
代码块含义:使用{ }括起来的代码 代码块类型: 1.局部代码块:定义在方法体中. 2.构造代码块:也叫初始化代码块,定义在类中方法体之外. 3.静态代码块:定义在类中方法体之外,被static修饰符 ...
- 5.Swift枚举|结构体|类|属性|方法|下标脚本|继承
1. 枚举: ->在Swift中依然适用整数来标示枚举值,需搭配case关键字 enum Celebrity{ case DongXie,XiDu,Nandi,BeiGai } // 从左 ...
随机推荐
- PAT乙级 解题目录
有些题做得可能比较傻,有好方法,或者有错误还请告诉我,多多指教=.= 思路比较好的题目我都有讲的很详细. 剩下三道题有待优化,等改好了再上传. 标题 题目链接 解题链接 1001 害死人不偿命的( ...
- PAT 1039 到底买不买(20)(20 分)
1039 到底买不买(20)(20 分) 小红想买些珠子做一串自己喜欢的珠串.卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖.于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要 ...
- eclipse自动添加javadoc注释
参考文档: https://jingyan.baidu.com/article/36d6ed1f70ea9c1bce488350.html https://www.cnblogs.com/yangji ...
- eclipse集成svn进行项目开发
在用eclipse进行项目开发的时候,报了一个错误:switch不支持String的参数.这个问题的原因是因为jre版本低于1.7,而当前的eclipse版本最高只能选1.6,无奈,我只能考虑换ecl ...
- python-bs4的使用
BeautifulSoup4 官方文档 是一个Python库,用于从HTML和XML文件中提取数据.它与您最喜欢的解析器一起使用,提供导航,搜索和修改解析树的惯用方法.它通常可以节省程序员数小时或数天 ...
- linux以16进制方式查看文件
vim打开文件 :%!xxd 以16进制查看 :%!xxd -r 转回来
- 句子相似度_tf/idf
import mathfrom math import isnanimport pandas as pd#结巴分词,切开之后,有分隔符def jieba_function(sent): import ...
- spring colud 博客
https://blog.csdn.net/forezp/article/details/70148833
- mysql mariadb的VC客户端遇到的问题
在使用VS2017编写数据库客户端 具体设置可参见以下内容 https://dev.mysql.com/doc/connector-cpp/en/connector-cpp-apps-windows- ...
- 前端js数据排序
销量统计系统中国地图热力分布图需要显示一个各省区销量列表,并按从多到少排序.本着轻易不修改后台数据源的原则,决定在前端进行修改实现.其实也容易实现,将数据存放一个数据<省区名称,销量>,然 ...