Türkçe | English
FACULTY of ENGINEERING / DEPARTMENT of COMPUTER ENGINEERING
(30%) English
Course Catalog
https://www.ktu.edu.tr/bilgisayar
Phone: +90 0462 377 2080
MF
FACULTY of ENGINEERING / DEPARTMENT of COMPUTER ENGINEERING / (30%) English
Katalog Ana Sayfa
  Katalog Ana Sayfa  KTÜ Ana Sayfa   Katalog Ana Sayfa
 
 

BIL3009Java Programming3+0+0ECTS:4
Year / SemesterFall Semester
Level of CourseFirst Cycle
Status Elective
DepartmentDEPARTMENT of COMPUTER ENGINEERING
Prerequisites and co-requisitesNone
Mode of DeliveryFace to face
Contact Hours14 weeks - 3 hours of lectures per week
LecturerDoç. Dr. Hüseyin PEHLİVAN
Co-LecturerNone
Language of instructionTurkish
Professional practise ( internship ) None
 
The aim of the course:
The course aims to provide an introduction to the fundamental concepts of the Java programming language (i. e. syntax and semantics, class creation and manipulation, graphical user interface programming and event-driven programming) and object-oriented programming (data abstraction, data encapsulation and software reuse) .
 
Learning OutcomesCTPOTOA
Upon successful completion of the course, the students will be able to :
LO - 1 : define classes, interfaces and methods to model behaviours of real-life objects.2,3,4,121,3
LO - 2 : write and make use of Java classes with a given interfaces.2,3,4,121,3
LO - 3 : apply the object-oriented programming paradigm in computer program design.2,3,4,121,3
LO - 4 : comprehend the event handling and exception handling mechanisms in Java.2,3,4,123
LO - 5 : implement Java applications with interactive graphical user interface.2,3,4,121,3
LO - 6 : write complete Java programs to solve practical computation problems.2,3,4,121,3
CTPO : Contribution to programme outcomes, TOA :Type of assessment (1: written exam, 2: Oral exam, 3: Homework assignment, 4: Laboratory exercise/exam, 5: Seminar / presentation, 6: Term paper), LO : Learning Outcome

 
Contents of the Course
Java Applications: Introduction, simple programs, arithmetic, equality and relational operators. Java Classes and Objects: Classes, objects, methods, instance variables, primitive types, reference types, dialog boxes. Control Statements: Control structures, selection and multi selection statements, repetition statements, logical operators. Methods: Static methods, method declaration and invocation, argument promotion, casting, scope of declarations, method overloading. Arrays: Declaring and creating arrays, passing arrays, multidimensional arrays. Classes and objects: Controlling access to members, constructors, composition, enumerations, garbage collection, final instance variables. Inheritance: Superclasses and subclasses, protected members, constructors in subclasses, Object class. Polymorphism: Polymorphic behavior, abstract classes and methods, final methods and classes, creating and using interfaces. GUI components: Swing components, JTextField, JLabel, JButton, JComboBox, JList, mouse-event handling, adapter classes, key-event handling, layout managers, JTextarea. Graphics and Java 2D: Graphics objects, color control, font control, drawing shapes, Java 2D API. Exception handling: Simple exceptions, exception hierarchy, finally block, stack unwinding, chained exceptions, declaring new exception types. Files and streams: Data hierarchy, File class, sequential-access text files, object serialization, random-access files. Multithreading: Life cycle of a thread, thread priorities, creating and executing threads, thread synchronization, multithreading with GUI.
 
Course Syllabus
 WeekSubjectRelated Notes / Files
 Week 1Java Applications
 Week 2Java Classes and Datatypes
 Week 3Control Statements
 Week 4Methods
 Week 5Arrays
 Week 6Classes and Objects
 Week 7Inheritance
 Week 8Polymorphism
 Week 9Mid-term exam
 Week 10GUI Components - I
 Week 11GUI Components - II
 Week 12Graphics and Java 2D
 Week 13Exception Handling
 Week 14Files and Streams
 Week 15Threading
 Week 16End-of-term exam
 
Textbook / Material
1Deitel, P. J., Deitel, H. M., 2012, Java How to Programming, 9th ed. , Prentice Hall., 1536 p.
 
Recommended Reading
1Liang, Y. D., 2005, Introduction to Java Programming, 5th ed. , Prentice Hall, 1314 p.
 
Method of Assessment
Type of assessmentWeek NoDate

Duration (hours)Weight (%)
Mid-term exam 9 2 50
End-of-term exam 16 2 50
 
Student Work Load and its Distribution
Type of workDuration (hours pw)

No of weeks / Number of activity

Hours in total per term
Yüz yüze eğitim 3 14 42
Sınıf dışı çalışma 2 14 28
Arasınav için hazırlık 6 1 6
Arasınav 2 1 2
Kısa sınav 15 1 15
Dönem sonu sınavı için hazırlık 10 1 10
Dönem sonu sınavı 2 1 2
Total work load105