[导言]今天开始我们的第二课,主要介绍Java的语法及结构。
java是一种面向对象的编程语言,一切都是对象。那么什么是对象呢,生活中一切都是对象,比如说一颗树,一个人,一只小动物,一切的一切。在java里面用来表示对象的方式就是定义一个类。
接下来我们来看看一个类的定义
package com.demo.main;
public class Person{
private int age;
private String name;
public Person(){
}
public void walk(){
System.out.println("我在走路!");
}
public void eat(){
System.out.println("我在吃饭!");
}
public void sleep(){
System.out.println("我要睡觉了!");
}
}
这是里定义了一个类,用它来描述现实生活中的人这个对象。
我们给这person这个类定义了一系列的属性
int age;
String name;
name代表这个人的名字,age代表年龄,然后又定义了三个行为,对应为类中的 *** ,即人会走路,会吃饭,会睡觉。
public void walk(){
System.out.println("我在走路!");
}
昨天我们知道java的程序要放到.java结尾的文件中,而且有个约定是一个.java文件一般只放一个class。这个class是要用public来声明。
下面我们就来详细讲解一个一个类的结构。
package com.javademo.main; //---这句是代表申明一个包的概念,即这个类要放到
//------- com下的demo的main这个包里面
public class Person{ //类的定义一般用public class 后面接类的名称,
//类的名称首字母要大写并且文件名和类名称要保持一致
private int age; //int是java的基本数据类型,代表一个整数
private String name;//String 是基本数据类型,代表一个字符串
public Person(int age,String name){ //这是一个构造函数,带两个参数
this.age=age;
this.name=name;
}
public void walk(){ //定义了一个不代返回值的函数,用的是public 来修饰。
System.out.println("我在走路!");
}
}
我们总结如下:
类文件的名称要和里面定义的public class的名称相同一个类的定义,一般包括了属性, *** 类至少会有一个无参的构造函数Java语句的结尾要加“;”分号类的定义要用大括号括起来。继续看上面的例子
我们定义了一个Person类,现在要来运行它
我们在Person里面增加一个 *** 定义
public static void main(String[] args){
Person zhansan = new Person(20,“张三”);
zhansan.walk();
}
我们先编译这个类文件,得到class然后在控制台运行
运行结果
public static void main(String[] arge)
这是一个main *** ,所有的java程序如果需要运行 都需要一个main *** 入口。
类与对象的关系
对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。类定义了一类对象的模板,是对象的抽象。类要使用必须先实例化成对象。
public static void main(String[] args){
Person zhansan = new Person(20,“张三”);
zhansan.walk();
}
在main *** 中,
Person zhansan = new Person(20,“张三”);
这句话就是用Person这个类,实例化出来一个对象 这个对象的引用我们这里用变量名zhansan来代替。zhansan.walk()就是对象引用zhansan调用了walk() *** 。
在这里new Person(20,"张三")是指的对象,在java里用new来生成一个对象,然后用zhansan来引用这个对象。
要调用类的 *** ,即是对象引用. *** 名
zhansan.walk() *** 来调用。
今天的知识点总结:
类文件的名称要和里面定义的public class的名称相同一个类的定义,一般包括了属性, *** 类至少会有一个无参的构造函数,构造函数和类的名称相同,并且构造函数不带返回值Java语句的结尾要加“;”分号类的定义要用大括号括起来。用new来实例化一个对象用对象引用来调用对象的 *** 。课后题:
1.定义一个类用来描述一只小猫,属性设定有颜色,毛发,品种。行为有喝水,叫,睡觉
编译类文件并打印运行结果
【原创教程,转载请注明.】
Hackernews编译,转载请注明出处: 一个企业网络间谍黑客组织在消失了7个月后重新浮出水面,今年它针对4家公司进行新入侵行动,其中包括俄罗斯最大的批发商店之一,同时对其工具集进行了战术性改进,以试图阻挠分析。 Group-IB 的伊万 · 皮萨列夫说: “在每一次攻击中,攻击者都展示了广泛的...
电动汽车(EV)革命来了。在过去的十年里,插电式混合动力电动车已经从16000辆增长到超过200万辆,汽车高管们预计到2030年,超过50%的美国汽车将是全电动的。不难看出,专家们为何做出如此乐观的预测。除了不断增长的电动汽车车队,今年早些时候签署的美国国会两党基础设施协议将包括75亿美元,以帮助规...
网络安全研究人员将该 APT 组织追踪为 UNC3524,并强调在某些情况下,该组织可以对受害者环境进行超过 18 个月的访问,展示了其 “先进 “的隐匿能力。 在每一个 UNC3524 受害者环境中,攻击者都会针对一个子集的邮箱,集中其注意力在执行团队和从事企业发展、兼并和收购的员工或 IT 安...
Wormhole Portal 刚刚遭遇了“桥梁”漏洞攻击,导致该加密货币平台损失了相当于 3.228 亿美元的 ETH 和 SOL 。问题源于以太坊区块链上的一个“智能合约”缺陷,别有用心的攻击者可借此将一款加密货币转换成另一种并跑路。 攻击后,失窃的加密货币资产已缩水至 2.94 亿美元。虽然...
在今天发布的安全公告中,微软安全团队发现了一个大规模的活动:利用类似主机的基础设施向网络犯罪团伙提供钓鱼服务。该服务被称为 BulletProofLink、BulletProftLink 或 Anthrax,目前在地下网络犯罪论坛上进行宣传。微软称这项服务为“钓鱼即服务”(Phishing-as-a...
微软披露其已经缓解了一场发生于8月份的2.4Tbps分布式拒绝服务(DDoS)攻击。这次攻击针对欧洲的一个Azure客户,比微软在2020年记录的最高攻击带宽量高出140%。它也超过了之前最大的攻击2.3Tbps的峰值流量,这是在去年针对亚马逊网络服务的攻击。 微软表示,这次攻击持续了10多分钟,...