본문 바로가기
  • 마침표 보다 쉼표를 나타내자
728x90

분류 전체보기332

클래스 public 차이 자바에서 클래스를 선언할때 class 와 public class 의 차이를 아는가? 자바에는 규칙이 존재한다 pulbic class를 사용한다면 그 클래스의 이름은 파일명과 동일해야한다는 점이다. 2023. 1. 8.
업캐스팅 그리고 메소드 오버라이딩 업캐스팅이란 무엇인가? 자식객체를 부모의 타입으로 해석하는 것이다. 이것이 왜 중요한가?????? 여러가지 객체를 생성한 것들을 부모의 타입으로 모두 관리가 되기 때문이다. 동물로 예를 들면 강아지, 고양이, 너구리 등등 노아의 방주를 탈때 동물들은 모두 방주를 타라 하면 쉽게 명령이 가능하다. 생선된 객체들을 업캐스팅( 부모타입으로 해석 )해서 배열에 저장후 출력하면 모든 객체를 간단히 출력할 수 있다. 그러면 메서드 오버라이딩은 무엇인가? 어렵게 생각하지 않아도 된다. 간단히 말하면 메서드를 재정의 하는 것이다. 상속받은 클래스 내에서 같은 이름의 메서드를 만들고 값을 리턴 시켜 재정의 한다. 2023. 1. 8.
개념 확실히 잡기 클래스, 객체, 인스턴스 클래스 ( 객체를 만들어 내기 위한 설계도 혹은 틀 ) 오브젝트 ( 구현 대상이자 클래스에 선언된 모양 int, string등등 ) 인스턴스 ( 설계도를 바탕으로 구현된 실체 ) 2023. 1. 8.
자바 접근에 대하여 우선 접근 지정자에 대해 알아보자 가장 접근을 많이 할수 있는 순서대로 나열해보자 접근 지정자 접근 범위 동일 패키지 동일 클래스 다른 패키지 다른 패키지 자식 public 접근제한 없음 O O O O protected 동일패키지, 상속 클래스 O O O default 동일 패키지 내 O O private 동일 클래스 내 O 순서대로 뜻을 정리해보자 public 은 공개 범위가 가장 넓다. 어디서든 접근 가능함. protected 은 같은 패키지 내에서 접근가능, 만약 다른 패키지 라도 상속을 받으면 클래스 내부에서는 사용가능함 public 과 가장 큰 차이는 클래스 외부에는 접근 할수 없다는 것이다. default 는 말그대로 기본값이다. 같은 패키지, 클래스 내에서만 접근이 가능합니다. private.. 2023. 1. 8.
Static을 정리하자 Static int res = 0; 변수 선언할때 앞에다 Static을 선언하면 여러 객체들이 변수를 공유하면서 사용할수 있다. 이를 클래스 변수라고 한다. 간단히 활용하고자 한다면. 예를 들어 클래스를 불러올때마다 변수가 초기화가 되서 0으로 가져온다면 Static으로 선언한 변수라면 클래스 내부에 값이 저장이 되서 그값을 불러 오게 된다. 그냥 int res = 0; 으로 한다면 객체 내부의 변수 즉, 인스턴스 변수가 된다. 유틸리티 메서드도 있는데 앞서 만들었는 주사위 게임에 랜덤이 객체 생성없이 바로 쓸수 있는 메서드 이다. 가장 중요한 점은 클래스 변수와 인스턴스 변수의 차이를 명확히 알아야한다는 점이다. 2023. 1. 8.
상속, 생성자 호출 간단하게 여러가지 타이어가 굴러가는 소리를 나타내보자. 우선은 모든 타이어를 불러오자. package q2; public class Main { public static void main(String[] args) { Tire t = new Tire("타이어", 10); gTire gt = new gTire("고무타이어", 12, 2); nTire nt = new nTire("넨타이어", 14, 6); t.spec(); gt.spec(); nt.spec(); } } 모든 타이어의 기본적인 부분을 만들어서 상속 받게하자. package q2; class Tire { private String name; private int size; public Tire(String name, int size) { thi.. 2023. 1. 8.
오브젝트 이해하기 오브젝트라는 클래스는 모든 객체의 조상입니다. 간단히 몬스터 클래스를 만들어서 확인 해봅시다. public class Monster { //필드(정보를 뜻합니다) String name; String hp; //들어온 값으로 초기화 public Monster(String name, String hp) { this.name = name; this.hp = hp; } public boolean equals(Object obj) { //지금 들어온 값을 몬스터 형태로 바꿔주기 Monster mon = (Monster)obj; if(name == mon.name && hp == mon.hp) { return true; }else { return false; } } } 그리고 메인메서드를 만듭니다. 인스턴스의 개념.. 2023. 1. 8.
클래스와 객체 클래스의 구성요소 필드 : 정보를 뜻합니다. 메서드 : 동작을 뜻합니다. 클래스를 토대로 객체를 생성 할 수 있습니다. ex ) Monster mon = new Monster(); 새롭게 만들어 냅니다 몬스터의 객체를 변수 mon에 대입합니다. (Monster타입의 변수 : 클래스 명에 따라야함 ) 2023. 1. 8.
01월 07일 - (44일차) 전에 작성했던 프로그램을 함수로 만들어서 다시 작성하였다. 반환 함수를 사용 하려고 하는데 쉽지 않다. 그런 상황을 만들려고 하니 더 짧게 만들어진다. 아주 아이러니한 상황이다. 숫자 야구게임을 함수로 만들어 보았다. #숫자 야구 게임 #랜덤 기능 호출 import random #값을 받을 3개의 공간을 생성합니다. num = ["0", "0", "0"] #값을 기억할 변수를 선언 합니다. s = 0 b = 0 x = 0 y = 0 max_game = 5 try_num = 0 num_str22 = [] number = [] #배열 초기화 함수 def ran_set(): global number number = [] #게임 결과 초기화 함수 def game_set(): global s global b s .. 2023. 1. 7.
01월 06일 - (43일차) 자바 스크립트를 배우고 있다. 조금씩 무엇인가 보이고 있다. 열심히 하자. 2023. 1. 6.
자바 스크립트 (간단한 나이 구별) 나이를 구별하는 간단한 코드 2023. 1. 6.
01월 05일 - (42일차) 다시 새로운 언어를 배우기에 처음부터 다시 듣고 있다. 이런 부분은 비슷한 것이 많기에 편안하게 수업을 들었다. 근데 자바는 음.... 이해 될때가지 해 보는수 밖에 없다 열심히 해보자 2023. 1. 5.
728x90