참조형 객체, String, StringBuilder 비교해보기
·
Dev/Java
자바에서 기본형은 int, long, double, boolean 등이 있고참조형은 클래스, 객체, String 등이 있다.참조형 데이터는 메모리 주소값을 참조한다.Student s1 = new Student("1번학생", 10, 10);Student s2 = new Student("2번학생", 100, 100);여기서 s1, s2에는 학생 객체의 “참조값”이 저장된다.이 상황에서 만약 배열을 새로 만든 뒤 배열에 학생 객체를 넣는다면 어떻게 될까?List students = new ArrayList();students.add(s1);students.add(s2);배열에서 인덱스로 학생 객체에 접근해서 값을 바꾼다면 배열 안의 학생 정보만 바뀔까? 아니면 배열 바깥의 학생 정보도 바뀔까?list.get(..
[객체(17)] 실습9
·
Dev/Java
💫 실습9 package com.kh.prac9.model.vo; public class Member { private String name;//이름 private int age;//나이 private String addr;//주소 private char gender;//성별 public Member() { super(); } public Member(String name, int age, String addr, char gender) { super(); this.name = name; this.age = age; this.addr = addr; this.gender = gender; } @Override public String toString() { return name + "," + age + ",..
[객체(16)] 입출력, 스트림
·
Dev/Java
💫 실습1 package com.kh.p2.filter.controller; import java.io.*; public class Filter { public void consoleInOut() { } public void buf() { } public void data() { FileOutputStream fout = null; FileInputStream fin = null; DataOutputStream dout = null; DataInputStream din = null; try { fout = new FileOutputStream("member.txt"); fin = new FileInputStream("member.txt"); dout = new DataOutputStream(fout); ..
[객체(15)] 실습7, 실습8
·
Dev/Java
💫 실습7 package com.kh.prac7.controller; import java.util.Calendar; public class DateCalculator { public long leapDate() { Calendar today = Calendar.getInstance(); long sumDays=0L; for(int i=0;i
[객체(14)]
·
Dev/Java
💫 실습1 package com.kh.p2.filter.controller; import java.io.*; public class Filter { public void consoleInOut() { } public void buf() { } public void data() { FileOutputStream fout = null; FileInputStream fin = null; DataOutputStream dout = null; DataInputStream din = null; try { fout = new FileOutputStream("member.txt"); fin = new FileInputStream("member.txt"); dout = new DataOutputStream(fout); ..
[객체(13)] 실습5, 실습6
·
Dev/Java
💫 실습5 package com.kh.prac5.model.vo; public class Book implements Cloneable{ private String title; //책제목 private int price; //가격 private String writer; //저자 private String publisher; //출판사 public Book() { } public Book(String title, int price, String writer, String publisher) { super(); this.title = title; this.price = price; this.writer = writer; this.publisher = publisher; } public String getT..
[객체(12)] 다형성(Polymorphism)
·
Dev/Java
📍 다형성 : 객체지향 프로그래밍의 3대 특징 중 하나로 '여러개의 형태를 갖는다'는 의미이다. : 하나의 행동으로 여러가지 일을 수행하는 개념 : 상속을 이용한 기술로 부모 타입으로부터 파생된 여러가지 타입의 자식 객체를 부모 클래스 타입 하나로 다룰 수 있는 기술 📍 클래스 형변환 🧸 업 캐스팅(Up Casting) : 상속 관계에 있는 부모, 자식 클래스 간에 부모타입 참조형 변수가 모든 자식 타입의 객체 주소를 받을 수 있다 💻 예시 //Sonata 클래스는 Car 클래스의 후손 Car c = new Sonata(); //Sonata 클래스형에서 Car 클래스형으로 바뀜 🧸 다운 캐스팅(Down Casting) : 자식 객체의 주소를 받은 부모 참조형 변수를 가지고 자식의 멤버를 참조해야 할 경우..
[객체(11)] 실습3, 실습4
·
Dev/Java
💫 실습3 package com.kh.prac3.controller; import java.util.Scanner; import java.util.StringTokenizer; public class TestWork { public void afterToken(String str) { System.out.println("토큰 처리 전 글자 : " + str); System.out.println("토큰 처리 전 개수 : " + str.length()); StringTokenizer st = new StringTokenizer(str, " "); int count = st.countTokens(); StringBuilder sb = new StringBuilder(); while(st.hasMoreToken..