java基础(2)-面向对象(2)
构造方法
构造方法特点
- 方法名与类名相同
- 方法名前没有返回值类型的声明(void也没有)
- 方法中不能使用return语句返回一个值
- 创建对象时自动调用并执行
- 如果类中没有自定义构造方法,则java调用类的默认构造方法,将使用默认值来初始化成员变量
构造方法与一般方法区别
- 格式
构造方法和类名相同,并且无返回类型,无返回值
一般方法可任意起名,必须有返回类型,可无返回值 - 调用
构造方法在对象一建立就调用,给对象初始化
一般方法时对对象的调用才执行 - 运行次数
一个对象建立,构造方法只能运行一次
一般方法可被该对象调用多次 - 作用
构造方法用于创建对象,并进行初始化
一般方法时用于完成特定功能的
构造方法的重载
在一个类中可以定义多个构造方法,只要每个构造方法的参数类型或参数个数不同即可
构造方法的类型
- 有参构造方法
- 无参构造方法
class Persion{
private String name;
private int age;
Persion(){
System.out.println("a:name="+name+",age="+age);
}
Persion(String n){
name = n;
System.out.println("b:name="+name+",age="+age);
}
Persion(String n,int a){
name = n;
age = a;
System.out.println("c:name="+name+",age="+age);
}
}
public class PersionDemo2{
public static void main(String[] args){
Persion p1 = new Persion(); //调用无参构造方法
Persion p2 = new Persion("wujiadong"); //调用一个参数的构造方法
Persion p3 = new Persion("wujiadong",24); //调用两个参构造方法
}
}
/*
输出结果:
a:name=null,age=0
b:name=wujiadong,age=0
c:name=wujiadong,age=24
*/
注意
- 为了方法实例化,构造方法一般使用public来修饰
- 在java中每个类至少有一个构造方法,若没有定义构造方法,系统会自动为该类创建一个默认的空的构造方法
构造代码块
- 作用
给对象进行初始化,对象一建立就执行,而且优先于构造函数执行 - 构造代码块和构造函数的区别
构造代码块是给所有不同对象的共性进行统一初始化
构造函数是给对应的对象进行初始化
主函数
主函数:是一个特殊的函数,作为程序的入口,可以被jvm调用
主函数的定义:
public:代表着该函数被范围权限是最大的
static:代表主函数随着类的加载就已经存在了
void:主函数没有具体的返回值
main:不是关键字,一个特殊的单词,可以被jvm识别
String[] args: 函数的参数,参数类型是数组,该数组的元素师字符串。字符串类型的数组
java基础(2)-面向对象(2)的更多相关文章
- Java基础-初识面向对象编程(Object-Oriented-Programming)
Java基础-初识面向对象编程(Object-Oriented-Programming) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Java是一门面向对象的程序设计语言.那么什 ...
- 黑马程序员——【Java基础】——面向对象(二)异常机制、包(Package)
---------- android培训.java培训.期待与您交流! ---------- 一.异常机制 (一)异常概述 1.异常:就是程序在运行时出现不正常情况. 2.异常类:程序在运行时,出现的 ...
- Java基础之面向对象以及其他概念
一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平台,jvm不是跨平台的. JR ...
- 【Java基础】面向对象下
面向对象下 这一章主要涉及其他关键字,包括 this.super.static.final.abstract.interface.package.import 等. static 在 Java 类中, ...
- 【java基础】面向对象的三大基本特征之-------继承
面向对象的三大特征:封装,继承,多态 java通过extends关键字来实现继承,而且是单继承,一个子类只可以有一个直接父类,但是父类还可以有父类... java.long.Object是所有类的父类 ...
- 黑马程序员——【Java基础】——面向对象(一)概述、类与对象、继承、抽象类、接口、多态、内部类
---------- android培训.java培训.期待与您交流! ---------- 一.面向对象概述 1.面向对象:是一个很抽象的概念,它相对面向过程而言,是一种程序设计的思想. 2.面向对 ...
- 再探java基础——对面向对象的理解(1)
对象 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则.计划或事件.对象具有属性和行为,在程序设计中对象实现了数据和操作的结合,使数 ...
- Java基础(6)- 面向对象解析
java面向对象 对象 知识点 java 的方法参数是按值调用,是参数的一份拷贝 封装 使用private将 属性值/方法 隐藏,外部只能调用 get,set方法/非private 的接口 获取 重载 ...
- Java基础总结--面向对象1
---面向对象的概念---1.面向过程与面向对象的区别面向过程:是一种思维习惯,解决一个问题的时候靠的是一个个方法调用--核心是动作面向对象:是一种更接近生活中解决问题的思维习惯,解决特定的问题靠对象 ...
- Java基础知识➣面向对象(八)
概述 Java和C#都是面向对象语言,面向对象编程是目前高级语言习惯的编程模式,与C++编写过程编程而言,面向对象使用起来高效.灵活:面向对象的三个特征:封装.继承和多态. Java面向对象 1.类封 ...
随机推荐
- boost::asio学习(定时器)
#include <boost/asio.hpp> #include <iostream> void handle1(const boost::system::error_co ...
- 【BZOJ4898】[Apio2017]商旅 分数规划+SPFA
[BZOJ4898][Apio2017]商旅 Description 在广阔的澳大利亚内陆地区长途跋涉后,你孤身一人带着一个背包来到了科巴.你被这个城市发达而美丽的市场所深深吸引,决定定居于此,做一个 ...
- 《从零开始学Swift》学习笔记(Day 38)——构造函数与存储属性初始化
原创文章,欢迎转载.转载请注明:关东升的博客 构造函数的主要作用是初始化实例,其中包括:初始化存储属性和其它的初始化.在Rectangle类或结构体中,如果在构造函数中初始化存储属性width和hei ...
- DRDS和RDS主要用来存储用户交易信息,MongoDB主要用来存储商品维度信息
数据集成Data Integration-数加-大数据-阿里云 https://www.aliyun.com/product/cdp 数据集成支持的数据源 数据源类型 数据源 来源数据源被读取 目标数 ...
- 费马小定理 Fermat Theory
w 整数的质数次方和自身的差是是质数的倍数 费马小定理(Fermat Theory)是数论中的一个重要定理,其内容为: 假如p是质数,且Gcd(a,p)=1,那么 a(p-1)≡1(mod p).即: ...
- https nginx openssl 自签名
公私钥:公钥可以唯一解密私钥加密过的数据,反之亦然.以下用P指代公钥,V指代私钥.SSL过程:需要两对公私钥(P1,V1),(P2,V2),假设通信双方是A和B,B是服务器,A要确认和它通信的是B:A ...
- delphi下excel的操作
1.首先引用comobj.varints单元 2.声明xlApp,xlBook, xlSheet,picture: Variant; 3.基本操作 xlApp:=CreateOleObject('Ex ...
- jquerymobile模板
<!DOCTYPE html> <html> <head> <title>Page Title</title> <meta name= ...
- Percona备份mysql全库及指定数据库(完整备份与增量备份)
Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份) Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对I ...
- Nginx和php-fpm部署到不同的服务器
Nginx安装滤过,基本上nginx上的配置很少,只要添加个server就可以了,主要安装php-fpm服务 php7.1.3安装 1.安装依赖的软件包yum -y install gcc gcc-c ...