this

 

this는 클래스의 현재 인스턴스를 참조하는 키워드이다. 인스턴스 변수와 지역 변수의 이름이 같을 때 이를 구별하는 데 사용됩니다.

 

double radius;
String color;
		
public Thiscircle(double radius, String color) {
	this.radius = radius;
	this.color = color;
}

this. radius 는 멤버필드의 radius를 의미한다.

 = radius 는 매개변수의 radius를 의미한다.

 

가독성을 위해서 의미가 같으면 같은 이름을 사용하기에 발생하는 문제를 this를 사용해서 해결한다.

 

this()

생성자에서 다른 생성자를 호출할 수 있도록 기존 생성자를 나타내는 this()도 제공한다.

 this()를 사용하면 오버로딩된 생성자에서 생기는 중복 코드를 없앨 수 있다.

 

		double radius;
		String color;
		
		public Thiscircle(double radius, String color) {
			this.radius = radius;
			this.color = color;
		}
		
		public Thiscircle(double raidus) {
			this(radius,"blue");
		}
		
		public Thiscircle(String color) {
			this(10.0, color);
		}
		
		public Thiscircle() {
			this(10.0, "red");
		}

 

this()는 첫 번째 메서드를 호출한다. 

this()를 사용할 때는 반드시 생성자의 첫 행에 위치해야 한다. 그렇지 않으면 오류가 발생한다.

결론을 먼저 말하면 thorw는 예외를 발생시키는 데 사용, throws는 메소드가 발생시킬 수 있는 예외를 명시하여 해당 예외를 호출하는 쪽으로 던지는 데 사용된다.

 

 

throw와 throws는 예외 처리 관련 키워드이다.

 

1. throw

 

throw는 예외를 발생시키는 데 사용된다. 예외가 발생할 조건이 만족될 때, 프로그래머가 직접적으로 예외를 발생시키고자 할 때 사용된다.

일반적으로 throw는 메소드 내부에서 사용되며, 메소드가 특정 조건에 맞지 않고나 예외 상황에 놓였을 때 예외를 발생시키는 데 쓰인다.

 

2. throws

 

thorws는 예외를 떠넘길 때 사용된다.

메소드 선언부에 사용되며, 해당 메소드가 발생시킬 수 있는 예외를 명시한다.

이는 해당 메소드를 호출하는 코드에서 그 예외에 대한 처리를 해야 함을 알려줍니다.

thorws를 통해 메소드가 예외를 던질 수 있음을 표시, 이러한 예외들은 메소드를 호출하는 곳에서 처리해야 한다.

 

thorws절이 있는 메소드를 오버라이딩할 때는 메서드에서 선언한 예외보다 더 광범위한 검사형 예외를 던질 수 없다. 또, 부모 클래스의 메서드에 예외를 떠넘기는 throws절이 없다면 자식 클래스가 메서드를 오버라이딩할 때 어떤 예외도 떠넘길 수가 없다.

 

 

 

'자바' 카테고리의 다른 글

[Java] getter와 setter  (0) 2024.04.03
[JAVA] 메서드 오버로딩  (1) 2024.04.03

getter는 인스턴스 변수를 반환하고

setter는 인스턴스 변수를 대입하거나 수정한다.

 

getter는 변수 앞에 get을,

setter는 변수 앞에 set을 붙이고 그 변수들의 앞글자는 대문자로 한다.

	public double getRadius() {
		return radius;
	}

	public void setRadius(double radius) {
		this.radius = radius;
	}

 

getter은 객체의 변수를 반환하고,

setter는 파라미터를 받아  변수에 할당한다.

 

getter와 setter를 사용하는 이유

필드를 캡슐화하게되면 외부에서 읽어올 수 없다.

이 때 쓰는게 getter와 setter이다. 

캡슐화를 하는 이유는 내부 데이터를 숨겨서 외부 영향을 받지 않도록 하는 것이다.

'자바' 카테고리의 다른 글

[JAVA] throw와 throws의 차이  (0) 2024.04.09
[JAVA] 메서드 오버로딩  (1) 2024.04.03

메서드 오버로딩이란 메서드 이름은 같지만 메서드 시그니처가 다른 메서드를 정의하는 것이다.

메서드 시그니처란 메서드 이름, 매개변수의 개수, 매개변수의 데이터 타입, 매개변수의 순서를 의미한다.

 

메서드 이름이 동일하더라도 매개변수 개수, 데이터 타입, 순서 중 하나라도 다르면 서로 다른 메서드로 취급한다.

 

'자바' 카테고리의 다른 글

[JAVA] throw와 throws의 차이  (0) 2024.04.09
[Java] getter와 setter  (0) 2024.04.03

<input type="">

 

1. type="text"

텍스트 타입의 데이터를 받겠다

 

2. type="number"

숫자만 입력받아야 하는 경우(수량, 나이...)

화살표를 클릭하면 숫자를 증가시키거나 감소시킬 수 있다.

 

3. type="password"

입력한 모든 문자가 마스킹된다.

 

4. type="tel"

전화번호 입력받는 경우 사용.

휴대폰에서 사용하는 경우 다이얼패드를 띄어준다.

 

5. type="search"

검색창에 입력하기 부적절한 줄 바꿈표시(엔터) 등의 특수문자가 제거된다.

x표시를 누르면 검색창의 내용물이 삭제된다.

휴대폰에서 사용하는 경우에는 enter버튼 대신에 검색버튼으로 활성화된다(바로 검색결과로 넘어갈 수 있게)

 

6. type="email"

이메일의 유효성을 검증하는 기능. 

 

7. type="url"

입력받은 자료가 url형태인지 검증하기 위한 기능을 제공

 

8. type="button"

button태그와 유사한 버튼을 화면에 표현

 

8-1. type="submit"

양식을 제출할 때 사용.

<form>태그와 함께 사용.

제출 버튼을 누르는 순간 다른 컴퓨터로 데이터가 전송된다.

 

9. type="file"

파일 업로드 버튼이 생겨 파일을 업로드할 수 있다.

 

accept속성을 추가

accept="image/*"  이미지 파일만 업로드 가능

accept="audio/*"   오디오 파일만 업로드 가능

accept="video/*"   비디오 파일만 업로드 가능

accept=".jpg, .png, .pdf"   입력받을 파일의 확장자를 직접 입력하는 것도 가능. 입력받을 확장자들을 (,)콤마로 구분해서 입력한다.

 

10. type="color"

사용자로부터 색상을 입력받음

 

11. type="checkbox"

 

12. type="radio"

여러 선택지 중 하나를 선택할 때 사용

name속성을 함께 사용해서 중복 선택 여부를 정한다.

같은 name끼리는 중복선택 불가

 

13. type="range"

슬라이더로 값을 선택한다

type="range" min="0" max="1000" step="10" value="10"

최솟값과 최댓값, 간격, 초기값 설정

 

14. 날짜와 시간

type="date"   날짜 입력받기

type="month"   연도와 월 선택

type="week"   연과 주를 선택

type="time"   시간을 입력받음

tpe="datetime-local"   날짜와 시간을 동시에 입력받기

 

<input>으로 입력받은 데이터는 서버에 전달된다. 

'웹 개발 > HTML+CSS+Js' 카테고리의 다른 글

코드 바르게 정렬하기  (0) 2024.04.02
HTML 태그  (0) 2024.03.21
HTML <!DOCTYPE html>  (0) 2024.03.21
Ruby, jekyll설치  (0) 2024.03.21

VSC 단축키

 

Shift + Alt + F

'웹 개발 > HTML+CSS+Js' 카테고리의 다른 글

input태그 type  (0) 2024.04.02
HTML 태그  (0) 2024.03.21
HTML <!DOCTYPE html>  (0) 2024.03.21
Ruby, jekyll설치  (0) 2024.03.21

 

셀레니움을 사용하려면 

크롬 드라이브가 있어야 한다.

더보기>도움말>Chrome 정보에서 본인의 크롬 버전을 확인한다.

 

https://chromedriver.chromium.org/downloads

 

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 115 or newer, please consult the Chrome for Testing availability dashboard. This page provides convenient JSON endpoints for specific ChromeDriver version downloading. For older versions of Chrome, please se

chromedriver.chromium.org

버전에 맞는 ChromeDrive를 다운받는다.

 

이 Chrome Drive와 맞는 버전의 selenium을 다운받아야 한다.

 

 

https://www.youtube.com/watch?v=imJuD2s3V6U

유투브 참고해서 하니까 셀레니움까지는 연결됐음. 

근데 사이트가 페이지가 넘어가도 url이 똑같은 데 이거는 어케해야할 지...

 

<html> html코드임을 표현 <html></html>
<head> 웹 페이지 헤드 부분임을 표현 <head></head>
<body> 문서의 본문임을 표현 <body></body>
<title> 사이트 제목을 표현 <title></title>
<meta> 메타데이터 표현 <meta></meta>
<div> 콘텐츠를 담는 그릇(줄 바꿈 o) <div></div>
<a> 하이퍼링크 <a href ="url">contents</a>
<script> 자바스크립트 삽입 <script>code</script>
<link> 외부 파일을 HTML문서와 연결 <lonk rel="style.css" type="text/css"/>
<img> 문서에 이미지 삽입 <img src="이미지 경로"/>

 

 

<span> 콘텐츠를 담는 그릇(줄 바꿈 x) <span style="color:red">빨간색</span>
<p> 문단(단락) 표현 (줄 바꿈 o) <p></p>
<li> & <ul> 목록(리스트) 표현을 위해 사용 <ul>
    <li>항목 1</li>
</ul>
<style> CSS코드 삽입 <style>CSS코드 삽입</style>
<br> 줄 바꿈 줄바꿈<br/>예시

 

<h1> 가장 큰 제목 <h1></h1>
<h2> 두번째로 큰 제목 <h2></h2>
<input> 화면에 입력창 삽입 <input type="text" name="name/>
<form> 정보를 모아 한 번에 전송 <form action="서버 주소" method="POST">폼 작성을 위한 코드</form>
<h3> 세번째로 큰 제목 <h3></h3>
<iframe> 다른 콘텐츠를 현재 문서에 삽입 <iframe src="주소"/>
<nav> 하이퍼링크를 모아 두는 영역 표시 <nav>
    <a href="#">main</a>
</nav>
<strong> 글자 굵게 <strong>원하는 굵은 글자</strong>
<footer> 웹 사이트 푸터(하단의 정보 기재란) 작성 <footer>푸터 코드 작성</footer>
<header> 웹 사이트 헤더(도입부에 해당하는 영역) 작성 <header>헤더 코드 작성</header>
<button> 화면에 버튼 삽입 <button type="submit">전송하기</button>

'웹 개발 > HTML+CSS+Js' 카테고리의 다른 글

input태그 type  (0) 2024.04.02
코드 바르게 정렬하기  (0) 2024.04.02
HTML <!DOCTYPE html>  (0) 2024.03.21
Ruby, jekyll설치  (0) 2024.03.21

+ Recent posts