构造函数
 函数名与类名相同
 不用定义返回值类型
 没有具体的返回值

作用:给对象初始化值

默认构造函数
 如果没有自己定义构造函数,系统会自动生成;
 如果定义了,则默认构造函数不会自动生成。

构造函数与一般函数区别
 1、构造函数在创建对象时,就会调用,并初始化
    一般函数是创建对象后,使用时才会去调用
 2、构造函数只会创建对象时调用一次
    一般函数按需调用

重载
 函数名相同,参数个数和类型不同

内存图解
 函数进栈

构造函数细节
 1、一般函数不能调用构造函数
 2、函数名称,构造函数与类名相同,一般函数首字母小写
 3、写个return

this关键字
 成员变量和局部变量重名时,使用this进行区分

this应用
 构造函数相互调用//this(name) 必须放在第一行
 类的所有成员调用必须有引用变量
 本类中调用本类,也要用到this

static关键字--数据共享
 特点:
 1、被所有对象共享
 2、可以直接被类调用//类名.静态成员
 3、优先于对象存在

成员变量与静态变量的区别
 成员变量、实例变量
 静态变量、类变量
 1、作用域不同
 2、存储位置不同,成员变量存储在堆内存的对象中
    静态变量数据存储在方法区的静态区,

static关键字注意事项
 1、静态方法只能访问静态成员
 2、静态方法中不可以使用this、super关键字
 3、主函数时静态的

主函数
 new String[0]

static 图解--重要
 非静态区:类、构造函数
 静态区:main
 
 栈

static应用
 
静态代码块
 static{ } //只会加载一次
 给类进行初始化

构造代码块
 类中的代码块,可以给所有对象进行初始化
 构造函数,给对应的对象进行针对性的初始化
 初始化顺序
 例:静态代码块 > 构造代码块 > 构造函数

Java Day 07的更多相关文章

  1. 027 01 Android 零基础入门 01 Java基础语法 03 Java运算符 07 逻辑“与”运算符

    027 01 Android 零基础入门 01 Java基础语法 03 Java运算符 07 逻辑"与"运算符 本文知识点:Java中的逻辑"与"运算符 逻辑运 ...

  2. Java(07)转化流

    查看API得知: public class OutputStreamWriter extends Writer public class InputStreamReader extends Reade ...

  3. Java设计模式07:常用设计模式之装饰器模式(结构型模式)

    1. Java之装饰器模式(Decorator Pattern) (1)概述:     装饰模式在Java种使用也很广泛,比如我们在重新定义按钮.对话框等时候,实际上已经在使用装饰模式了.在不必改变原 ...

  4. GUI编程笔记(java)07:GUI把文本框的值移到文本域案例

    1.首先我们了解一下我们的需求,如下: 输入“风清扬”,点击“数据转移”,这样的文本会出现到下面的文本域中,这就是我们的需求. 2.代码如下: package cn.itcast_05; import ...

  5. Java基础07 包

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们已经写了一些Java程序.之前的每个Java程序都被保存为一个文件,比如Tes ...

  6. Java面试07|Redis数据库

    1.Redis持久化的几种方式 (1)RDB(Redis DataBase)持久化 (2)AOF(Append Only File)持久化 2.Redis的缓存失效策略 主要涉及到expire对主键过 ...

  7. java基础07 多线程

    在学习操作系统时,我们会学习进程和线程,那么进程和线程又是什么东西呢? 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程(thread) ...

  8. 带着新人看java虚拟机07(多线程篇)

    这一篇说一下比较枯燥的东西,为什么说枯燥呢,因为我写这都感觉很无聊,无非就是几个阻塞线程的方法和唤醒线程的方法... 1.线程中断 首先我们说一说怎么使得一个正在运行中的线程进入阻塞状态,这也叫做线程 ...

  9. Java笔记 #07# Hibernate Validator

    Hibernate Validator是Spring Boot默认附带的标准校验API(javax.validation)实现. 应用实例(配合切面) 采用注解定义切面.java @Aspect @C ...

  10. Java第07次实验提纲(异常)

    PTA与参考资料 题集:集合 异常实验文件 第1次实验 1.1 7-1 常用异常 如何进行强制转换.父类型转化为子类型常见错误. 如何捕获多种类型的异常 简要输出异常信息,System.out.pri ...

随机推荐

  1. hbase常用运维命令

    一,基本命令: 建表:create 'testtable','coulmn1','coulmn2' 也可以建表时加coulmn的属性如:create 'testtable',{NAME => ' ...

  2. Linux下切换用户

    0x01 使用命令[su username] 这种方法能切换普通用户和root用户 0x02 从普通用户切换到root用户,还可以使用命令[sudo su] 0x03 su 是switch user的 ...

  3. Android IOS WebRTC 音视频开发总结(三二)-- WebRTC项目开发建议

    本文主要介绍WEBRTC开发过程中的一些现象,文章来自博客园RTC.Blacker,支持原创,欢迎关注微信公众号blacker,更多详见www.rtc.help 随着移动互联网和智能硬件的快速发展,音 ...

  4. 查看cics 运行状态

     查看cics 运行状态cicscp -v status all 

  5. Asp.net从文件夹中读取图片,随机背景图

    第一步:配置文件web.config里添加 <system.web><connectionStrings> <!--name 是自定义的,connectionString ...

  6. excel上传和下载

    需要注意的地方: 1.js构造表单并提交 2.js中文传参encodeURI(encodeURI("中文")),action接收并转换value = URLDecoder.deco ...

  7. C++实现01串排序

    题目内容:将01串首先按长度排序,长度相同时,按1的个数从少到多进行排序,1的个数相同时再按ASCII码值排序. 输入描述:输入数据中含有一些01串,01串的长度不大于256个字符. 输出描述:重新排 ...

  8. CKeditor的简单使用

    由于项目中要使用ckeditor 做个推荐功能,由于值设定到文本内容,就选择最基本的使用. 使用的版本为当前最新版本4.4.7,你需要下载两部分,一个是前台使用,一个是后台使用, 你可以到我的网盘中下 ...

  9. Laravel 5 基础(十一)- Eloquent 关系

    一个用户可能有多个文章,一个文章是某个用户书写的,这就是关系.同样文章中可能包含多个 TAG,而一个 TAG 可能关联多个文章. 在项目中,我们已经有了 User.php,也就是用户模型,查看一下,相 ...

  10. uboot启动流程

    uboot 的启动过程及工作原理2.1 启动模式介绍    大多数 Boot Loader 都包含两种不同的操作模式:"启动加载"模式和"下载"模式,这种区别仅 ...