java9的垃圾收集机制,JAVA学习笔记9——垃圾回收机制+构造方法+重载

最近在看JAVA教学的视频,觉得老师讲的很好,同时借用源代码还有笔记来撰写本系列博客,记录自己的学习内容,同时也供看到的人学习。

开始第九篇啦~

本篇的第一个内容理解一下即可——JAVA的垃圾回收机制:

0818b9ca8b590ca3270a3433284dd417.png

C++是程序员自己回收的,这种做法对所有开发者的要求都很高,不适用于大规模多人合作的软件。而JAVA与其相比则对程序员本身的变成习惯并没有多么高的要求,更加“人性化”一些

本篇主要介绍的第二个内容是类里面非常重要但又可有可无的一个内容———构造方法,学过C++的童鞋可能知道析构函数与构造函数,JAVA的构造函数最显著的特点也是像前两者一样体现在名字上,那就是构造方法的名字必须与类名完全相同。下面是一些具体的概念和要求:

0818b9ca8b590ca3270a3433284dd417.png

下面是一道例题:

示例:定义一个Point类用来表示三维空间的点(有三个坐标)。要求如下:可以生成具有特定坐标的点对象;提供可以设置三个坐标的方法;提供可以计算该“点”距另外点距离的方法。

public class Point {

double x,y,z;

//通过构造方法初始化对象的属性

public Point(double x,double y, double z){

x =x;

y = y;

z = z;

}

public void setX(double _x){

x = _x;

}

public void setY(double _y){

y = _y;

}

public void setZ(double _z){

z = _z;

}

public double distance(Point p){

double result = Math.sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y)+(z-p.z)*(z-p.z));

return result;

}

public static void main(String[] args) {

Point p = new Point(3,4,8);

Point p2 = new Point(200,40,80);

p.setX(10);

System.out.println(p.x);

System.out.println(p.distance(p2));

}

}最后介绍的内容是方法的重载(overload),这是JAVA的一个很广泛的应用,方法重载是指方法的签名(方法名+返回值类型)相同但是形式参数的类型、个数、顺序中的一个或者多个不同的若干个方法

0818b9ca8b590ca3270a3433284dd417.png

最后看一看重载的典型例子:

public class TestOverload {

public int add(int a, int b){

return a+b;

}

public static void main(String[] args) {

MyMath m = new MyMath();

int result = m.add(4.2,8);

System.out.println(result);

}

}

class MyMath {

int a;

int b;

public MyMath(){

}

public MyMath(int a){

this.a = a;

}

public MyMath(int b, int a){

this.b = b;

this.a = a;

}

public int add(int b, double a){

return (int)(a+b);

}

public int add(double a, int b){

return (int)(a+b);

}

public int add(int a, int b){

return a+b;

}

public int add(int a, int b,int c){

return a+b+c;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值